English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
В этом руководстве мы будем изучать различие между оператором == и методом equals() в Java
class Main { public static void main(String[] args) { String name1 = new String("w3codebox"); String name2 = new String("w3codebox"); System.out.println("Проверка того, равны ли две строки"); //Проверка того, равны ли две строки // Использование оператора == boolean result1 = (name1 == name2); System.out.println("Использование оператора ==: " + result1); //Использование метода equals() boolean result2 = name1.equals(name2); System.out.println("Используя equals(): " + result2); {} {}
Результат вывода
Проверка того, равны ли две строки Использование оператора ==: false Использование метода equals(): true
В предыдущем примере мы использовали оператор == и метод equals() для проверки того, равны ли две строки. Здесь,
Оператор == проверяет ссылки на строковые объектыСравнение ссылокТаким образом, name1 и name2 являются двумя различными параметрами. Таким образом, он возвращает false.
Метод equals() проверяет содержимое строки объектаСравнение содержимогоЗдесь, содержимое объектов name1 и name2 одинаково:w3codeboxТаким образом, он возвращает true.
class Main { public static void main(String[] args) { String name1 = new String("w3codebox"); String name2 = name1; System.out.println("Проверка того, равны ли две строки"); //Проверка того, равны ли две строки //Использование оператора == boolean result1 = (name1 == name2); System.out.println("Использование оператора ==: " + result1); //Использование метода equals() boolean result2 = name1.equals(name2); System.out.println("Использование метода equals(): " + result2); {} {}
Результат вывода
Проверка того, равны ли две строки Использование оператора ==: true Использование метода equals(): true
Здесь, name1 и name2 оба指向同一个 объект. Таким образом, name1 == name2 возвращает true.