Форум программистов, компьютерный форум CyberForum.ru

Программирование Android

Войти
Регистрация
Восстановить пароль
 
Arion32
3 / 3 / 0
Регистрация: 17.10.2016
Сообщений: 140
#1

Не работает сравнение String с пустой строкой - Android

14.11.2016, 12:34. Просмотров 160. Ответов 9
Метки нет (Все метки)

Добрый день. Возникла проблема использования оператора if при нажатии кнопки.

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
          btn.setOnClickListener(new View.OnClickListener() {
 
            @Override
            public void onClick(View arg0) {
 
               if (ip == "" ) {
 
               IpAddress.setText("Введите IP");
                   
 
                }
                else
                IpAddress.setText(param );
}
});
Суть проблемы: ввожу значение "" и цикл в первом случаи отрабатывает. Далее если ввожу значение
не "" цикл переходит во второй случай. Но если после этого ввести "" всеравно
выводит результат второго случая. Т.е. попав во второй случай оно в нем и остается при дальнейшем нажатии.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
14.11.2016, 12:34     Не работает сравнение String с пустой строкой
Посмотрите здесь:

R cannot be resolved to a variable, пустой проект Android
Android AsyncTask<String, String, String> объясните пожалуйста
Сравнить текущую дату с строкой Android
Android Сравнение EditText и String
Android Определить первый пустой элемент ArrayList
Пустой список после вызова adapter.notifyDataSetChanged Android
Android После добавления рекламы в практически пустой проект размер файла 7,68 мегабайт
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
ExFau$t
212 / 195 / 39
Регистрация: 08.05.2012
Сообщений: 1,114
14.11.2016, 12:37     Не работает сравнение String с пустой строкой #2
ip это что? String? Ты сравниваешь стринги оператором ==? equals() для буржуев?
Паблито
2063 / 1805 / 562
Регистрация: 12.05.2014
Сообщений: 6,430
Завершенные тесты: 1
14.11.2016, 12:37     Не работает сравнение String с пустой строкой #3
какой цикл?
какой случай?
какое дальнейшее нажатие?

Java
1
 if (ip.isEmpty() ) {
shavuz
99 / 105 / 19
Регистрация: 29.01.2014
Сообщений: 519
14.11.2016, 12:44     Не работает сравнение String с пустой строкой #4
Цитата Сообщение от Паблито Посмотреть сообщение
if (ip.isEmpty() ) {
наверно так лучше:
Java
1
if (ip!=null && ip.isEmpty()
ExFau$t
212 / 195 / 39
Регистрация: 08.05.2012
Сообщений: 1,114
14.11.2016, 12:47     Не работает сравнение String с пустой строкой #5
shavuz,
Цитата Сообщение от Arion32 Посмотреть сообщение
ввожу значение ""
Он там что-то вводит, я бы вставил equals("").
Паблито
2063 / 1805 / 562
Регистрация: 12.05.2014
Сообщений: 6,430
Завершенные тесты: 1
14.11.2016, 12:49     Не работает сравнение String с пустой строкой #6
Цитата Сообщение от shavuz Посмотреть сообщение
наверно так лучше:
не видя кода - так не лучше, может у него там уже 100 раз все инициализировано
и еще лучше тогда так
Java
1
if (TextUtils.isEmpty(ip))
твой совет, как обычно из разряда - главное отписаться
Arion32
3 / 3 / 0
Регистрация: 17.10.2016
Сообщений: 140
14.11.2016, 12:51  [ТС]     Не работает сравнение String с пустой строкой #7
Цитата Сообщение от Паблито Посмотреть сообщение
1
*if (ip.isEmpty() )
Спасибо помогло!)
Но почему с "" не работает? Первый раз срабатывает а потом нифига.
shavuz
99 / 105 / 19
Регистрация: 29.01.2014
Сообщений: 519
14.11.2016, 12:54     Не работает сравнение String с пустой строкой #8
Цитата Сообщение от Паблито Посмотреть сообщение
не видя кода - так не лучше, может у него там уже 100 раз все инициализировано
не видя кода, видя переменную nullable это сразу nullpointer без лишней димагогии.
что ж ты ему сразу текстютилс не посоветовал?

Добавлено через 53 секунды
Цитата Сообщение от Arion32 Посмотреть сообщение
Но почему с "" не работает? Первый раз срабатывает а потом нифига.
стринг это не простой обьект как инт или дабл, его нельзя просто прировнять, у него есть функции которые это делают, если == то он никогда туда не зайдет
Паблито
2063 / 1805 / 562
Регистрация: 12.05.2014
Сообщений: 6,430
Завершенные тесты: 1
14.11.2016, 12:56     Не работает сравнение String с пустой строкой #9
Цитата Сообщение от Arion32 Посмотреть сообщение
Но почему с "" не работает?
потому что уже написали в сообщении #5 - строки в джаве сравниваются через equals(), а не через ==

Добавлено через 24 секунды
Цитата Сообщение от shavuz Посмотреть сообщение
что ж ты ему сразу текстютилс не посоветовал?
да я просто у тебя забыл спросить с какого раза ему советовать TextUtils
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
14.11.2016, 13:00     Не работает сравнение String с пустой строкой
Еще ссылки по теме:

Android Как управлять касанием на пустой области Layout?
Android Не получается запустить пустой проект AndroidStudio
Android ListView пустой
Android Не работает сравнение String через ==
Android Server->Client Обновление БД длинной строкой. Приходит не все отосланное

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
shavuz
99 / 105 / 19
Регистрация: 29.01.2014
Сообщений: 519
14.11.2016, 13:00     Не работает сравнение String с пустой строкой #10
Цитата Сообщение от Паблито Посмотреть сообщение
да я просто у тебя забыл спросить с какого раза ему советовать TextUtils
веселый парень!
Yandex
Объявления
14.11.2016, 13:00     Не работает сравнение String с пустой строкой
Ответ Создать тему
Опции темы

Текущее время: 22:40. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru