powered by simpleCommunicator - 2.0.40     © 2025 Programmizd 02
Форумы / Android [игнор отключен] [закрыт для гостей] / как правильно сравнить строки
13 сообщений из 13, страница 1 из 1
как правильно сравнить строки
    #39002329
nikomp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
есть код

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
public boolean onPreferenceChange(Preference preference, Object newValue) {
				Log.d("myLogs", "1__________" + newValue);
				String st = "Заметка";
				String st1 = newValue.toString();
				Log.d("myLogs", "2__________" + newValue.equals(st));
				Log.d("myLogs", "3__________" + newValue.equals("Заметка"));
				Log.d("myLogs", "4__________" + st.equals(st1));
				if (newValue.equals(st)){
					Log.d("myLogs","21__________");
					Intent intent = new Intent(getApplicationContext(), MainActivity.class);
					//intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
					startActivity(intent);


				}
				return true;
			}



в логах вот что

07-08 13:30:56.870 9664-9664/com.example.myreminder D/myLogs﹕ 1__________Заметка
07-08 13:30:56.870 9664-9664/com.example.myreminder D/myLogs﹕ 2__________false
07-08 13:30:56.870 9664-9664/com.example.myreminder D/myLogs﹕ 3__________false
07-08 13:30:56.870 9664-9664/com.example.myreminder D/myLogs﹕ 4__________false

что я делаю не так?
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002339
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikomp, вроде вопрос про сравнение строк...
nikomp
Код: java
1.
public boolean onPreferenceChange(Preference preference, Object newValue) {
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002356
nikomp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadman,

ну в Object у меня строка приходит "Заметка" не получается сравнить
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002378
Dim666
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikompwadman,

ну в Object у меня строка приходит "Заметка" не получается сравнитьПопробуйте в любой IDE сгенерить equals() и увидите внутри что-то типа:
Код: java
1.
if (o == null || getClass() != o.getClass()) return false;

В учебниках по Java описано, почему должно быть так.

А вот почему "st.equals(st1)" (именно так нужно здесь делать сравнение) вернуло false - неясно. Попробуйте вывести:
Код: java
1.
Log.d("myLogs", "5__________ '" + st + "' '" + st1 + "'");

Скорее всего они действительно отличаются в каком-нибудь символе.
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002392
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikompну в Object у меня строка приходит "Заметка" не получается сравнить
Сделай тип String.
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002394
nikomp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim666,

Dim666Попробуйте вывести:
Log.d("myLogs", "5__________ '" + st + "' '" + st1 + "'");
Скорее всего они действительно отличаются в каком-нибудь символе.


похоже вы правы, вот что получилось в логах

07-08 14:30:49.340 15194-15194/com.example.myreminder D/myLogs﹕ 5__________ '�������' 'Заметка'

похоже что-то с кодировкой, можно это как-то исправить?
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002398
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
как сделаны настройки.

что за "Заметка"
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002405
nikomp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikomp,

после того как изменил кодировку
(В Android Studio в правом нижнем углу выбрал кодировку UTF-8 вместо windows-1251)
ошибка пропала, вообще частенько AS что-то не нравится с кодировкой, но с такой ситуацией я столкнулся впервые
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002419
nikomp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джибс,

"Заметка" - строка из массива entries
Настройки заданы в xml
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002470
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikompвообще частенько AS что-то не нравится с кодировкой, но с такой ситуацией я столкнулся впервые
Недавно они сменили кодировку по умолчанию для винды.
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002474
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikompДжибс,

"Заметка" - строка из массива entries
Настройки заданы в xml
вот по этому у меня либо цивры, либо латинница там
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002596
nikomp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Джибс,

а где хранишь кириллицу?
...
Рейтинг: 0 / 0
как правильно сравнить строки
    #39002841
Фотография Джибс
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
nikompДжибс,

а где хранишь кириллицу?

ну сами параметры у меня не в кирилице, все остальное
в обычных ресурсах.

правда я всегда ставлю для всех проектов UTF8
так как, в других кодировках, обычно во всяких git/svn комменты не почитать было.
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / Android [игнор отключен] [закрыт для гостей] / как правильно сравнить строки
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]