Easy Java
5.22K subscribers
311 photos
51 videos
463 links
Лучшие обучающие материалы и другие полезности для Java-разработчиков.

Сотрудничество: @heywan_n1

Цены: @heywan_media

Реклама на бирже: https://telega.in/c/+r8kkGSypBY84MmIy
Download Telegram
🟢 1. Ошибка: == vs equals() при сравнении строк

В Java строки (String) сравниваются не через ==, а с equals(), иначе возможны ошибки.

📌 Ошибка:

public class StringComparison {
public static void main(String[] args) {
String s1 = "hello";
String s2 = new String("hello");

System.out.println(s1 == s2); // false (сравнение ссылок)
System.out.println(s1.equals(s2)); // true (сравнение значений)
}
}


👍 Разбор:

✔️ == сравнивает ссылки на объекты в памяти, а не значения.
✔️ equals() сравнивает сами строки.


✔️ Правильный вариант:


if (s1.equals(s2)) {
System.out.println("Строки равны ");
}


💡 Запомни:

✔️ Используй equals() для строк.
✔️ == работает только для пулла строк (String s1 = "hello"; String s2 = "hello";).

А вы знали об этом?

📍 Теги: #java #string #equals #mistakes #bestpractices
Please open Telegram to view this post
VIEW IN TELEGRAM
👍19🤯32
Ошибка: Сравнение строк через == вместо .equals()

🚨 Одна из самых частых ошибок в Java — сравнение строк через ==.

Ошибка ⚠️ :
public class StringComparison {
public static void main(String[] args) {
String str1 = "Hello";
String str2 = "Hello";
String str3 = new String("Hello");

System.out.println(str1 == str2); // true (оба строки из пула строк)
System.out.println(str1 == str3); // false (разные объекты в памяти)
}
}


Что произошло

🚨 == сравнивает ссылки в памяти, а не содержимое строк!

✔️ Правильный вариант:

System.out.println(str1.equals(str2)); //  true
System.out.println(str1.equals(str3)); // true



👍 Разбор:

✔️ == проверяет ссылки, а не содержимое строк.
✔️ Используй .equals() для сравнения значений строк.
✔️ intern() можно использовать для приведения строк в пул строк.

💡 Запомни:

✔️ == сравнивает ссылки.
✔️ .equals() сравнивает содержимое.
✔️ intern() делает строки из new String() частью пула строк.

А вы знали об этом?

📍 Теги: #java #mistakes #bestpractices #string
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍54