Встречается на собеседованиях • сегодня

Можно ли сравнивать строки через ==

В Java строки сравнивают через equals(), а не ==.

  • == сравнивает ссылки на объекты в памяти, а не содержимое строк.
  • equals() сравнивает символы строки.

Пример:

java
String s1 = "hello";
String s2 = new String("hello");

System.out.println(s1 == s2);       // false (разные объекты)
System.out.println(s1.equals(s2));   // true (одинаковое содержимое)

Исключение: строковые литералы ("hello") кэшируются в пуле строк, поэтому s1 == "hello" вернет true. Но полагаться на это не стоит — всегда используй equals().

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы