Сравнение выражения без знака> = 0 всегда верно - PullRequest
2 голосов
/ 09 августа 2011

Я получаю предупреждение Сравнение выражения без знака> = 0 всегда верно

В этой строке: return status != nil && status.length >= 0 && status.length <= 140;

Так что я не уверен, звучит ли это глупо или нет, но я должентогда просто удалите это выражение>

Спасибо!

Ответы [ 4 ]

10 голосов
/ 09 августа 2011

Удалить только эту часть проверки - status.length> = 0. На самом деле эта часть проверки будет оптимизирована компилятором и удалена автоматически, так как это не имеет смысла. Удаление его из кода поможет вам избавиться от этого предупреждения.

5 голосов
/ 09 августа 2011

Да - поскольку длина возвращает целое число без знака, оно всегда будет «больше или равно 0».Вы можете удалить условную часть status.length> = 0.

3 голосов
/ 09 августа 2011

Если вы хотите убедиться, что у вас нет строки нулевой длины, вам следует использовать условие status.length > 0.

В противном случае вы можете удалить это условие, как уже упоминали другие.

0 голосов
/ 05 ноября 2014

Вы должны написать заявление, которое никогда не может быть выполнено

У меня это, потому что я делаю что-то вроде этого ..

 if (textField.text.length < 0) //wrong logic 

длина текста textField не может быть меньше 0. Должно быть не менее 0.

Всякий раз, когда компилятор видит такую ​​логическую ошибку, которая никогда не может быть возможной (выполненной). Это генерирует такого рода предупреждение. Если у кого-то есть такая ошибка, проверьте правильность вашей логики.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...