Что такое оператор «меньше или равно» в Java? - PullRequest
3 голосов
/ 01 февраля 2012

Я знаком с программированием Actionscript, и я часто использовал операторы "<=" (меньше или равно) или "> =" (больше или равно).

Однако в Eclipse я не смог использовать такие операторы. Вот моя ситуация. Определенная переменная:

final EditText UserNumber = (EditText) findViewById(R.id.editText1);

А вот и польза:

if (UserNumber <= 10){ }

Я уверен, что это очень легко / быстро исправить, но я не смог найти то, что следует использовать в этой ситуации.

И это ошибка, которую я получаю:

Оператор <= не определен для типов аргументов. EditText, int </p>

Ответы [ 5 ]

10 голосов
/ 01 февраля 2012

Как ясно указывает на ошибку, вы не можете сравнить экземпляр EditText с числом.

Возможно, вы хотите получить значение EditText.

3 голосов
/ 01 февраля 2012

В качестве решения используйте это вместо

Integer.parseInt(UserNumber.getText().toString()); 

В вашем случае все работает нормально,

 if((Integer.parseInt(UserNumber.getText().toString()) )<=10)
            {
               //Do what you want 
            }
0 голосов
/ 01 февраля 2012

Опасный изгиб! Вы не можете использовать <= etc для сравнения объектов Java. Вам нужно использовать метод CompareTo, если он реализован. Это особенно касается струн. </p>

0 голосов
/ 01 февраля 2012
Integer.valueOf(UserNumber.getText().toString())<=10
0 голосов
/ 01 февраля 2012

Сначала вам нужно получить текст из представления редактирования текста, затем, если это целое число, получить значение из строки.

        Integer.parseInt(UserNumber.getText().toString()); 

Как упоминалось выше.

...