Я обнаружил при дебюте моего приложения для Android странное поведение.Почему Boolean TRUE не является ИСТИННЫМ?
Существует выражение:
if (r == true)
где вар r
имеет значение true
, но все заявление является ложным. Я пытаюсь использовать объект Boolean
, а также примитивный тип boolean
.
Уверен, что я делаю некоторые основные ошибки.
Вот экран от debbuger.
Edit:
Я использую java.lang.Boolean
.
метод isSyncRequired
возвращает Boolean.TRUE
и сравнивается в блоке if-else.
if(isSyncRequired(s))
if (r)
if (r == true)
dont't work.
Я забыл ... Я также пытаюсь оператор ', если (г)'. – misco
Из-за любопытства, почему вы просто не делаете: «if (isSyncRequired (s))» или даже «if (r)», вы теперь сравниваете логическое значение, чтобы убедиться, что оно истинно, в то время как вы можете просто использовать само значение , И при использовании Boolean use equals not == –
Я сначала использую 'if (isSyncRequired (s)), но приложение получило странное поведение. Затем я начинаю искать ошибку. Я меняю его на 'if (r)' позже на 'if (r == true)' и т. Д. – misco