Как правильно сравнить две строки в java?

Пользователь

от hoyt.jerde , в категории: Java , 4 месяца назад

Как правильно сравнить две строки в java?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от jerad.kuphal , 4 месяца назад

@hoyt.jerde На самом деле сравнить две строки в Java можно несколькими способами и один из них использовать == и другой вариант вызвать метод .equals() на строке. Есть особенности у каждого из варинтов и если Вам нужно сравнить самое значение строки, то вероятно .equals() подойдет Вам больше, а если сами объекты строк, то ==. Посмотрите ниже пример как работают оба из вариантов:


 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
String string1 = "Тест";
String string2 = "Тест";

// TRUE
if (string1 == string1) {
    System.out.println("Одинаковые строки");
}

// TRUE
if (string1.equals(string2)) {
    System.out.println("Одинаковые строки");
}

String stringObj1 = new String("test2");
String stringObj2 = new String("test2");

// FALSE потому что разные обьъекты
if (stringObj1 == stringObj2) {
    System.out.println("Одинаковые строки");
}

// TRUE потому что само значение строки одинаковое
if (stringObj1.equals(stringObj2)) {
    System.out.println("Одинаковые строки");
}