私はActionscriptプログラミングに精通しており、「<= "(以下)または"> = "(以上)演算子をよく使用しました。
しかし、Eclipseではそのような演算子を使用できませんでした。これが私の状況です。定義された変数:
final EditText UserNumber = (EditText) findViewById(R.id.editText1);
そして、ここに使用法があります:
if (UserNumber <= 10){ }
これは非常に簡単で迅速な修正であると確信していますが、この状況で何を使用すべきかを見つけることができませんでした。
そして、これは私が得ているエラーです:
演算子<=は、引数タイプEditText、intに対して未定義です。
エラーが明確に示しているように、EditText
インスタンスを数値と比較することはできません。
おそらくEditText
の値を取得したいと思うでしょう。
解決策として、代わりにこれを使用してください
Integer.parseInt(UserNumber.getText().toString());
あなたの場合、これはうまくいきます、
if((Integer.parseInt(UserNumber.getText().toString()) )<=10)
{
//Do what you want
}
最初にテキストの編集ビューからテキストを取得する必要があります。次に、それが整数の場合は、文字列から値を取得します。
Integer.parseInt(UserNumber.getText().toString());
上記のように。
Integer.valueOf(UserNumber.getText().toString())<=10
急カーブ有り! <=などを使用してJavaオブジェクトを比較することはできません。実装されている場合はcompareToメソッドを使用する必要があります。これは、特に文字列に当てはまります。