Метод equals() класса String в Java

Java String类Класс String в Java


Метод equals() используется для сравнения строки с указанным объектом.

Метод equals() переопределён в классе String для сравнения содержимого двух строк на равенство.

Синтаксис

public boolean equals(Object anObject)

Parameters

  • anObject-- Объект для сравнения со строкой.

Возвращаемое значение

Возвращает true, если заданный объект равен строке; в противном случае возвращает false.

Пример

Пример

public class Test {
    public static void main(String args[]) {
        String Str1 = new String("example");
        String Str2 = Str1;
        String Str3 = new String("example");
        boolean retVal;

        retVal = Str1.equals( Str2 );
        System.out.println("Return value = " + retVal );

        retVal = Str1.equals( Str3 );
        System.out.println("Return value = " + retVal );
    }
}

Вывод вышеприведённой программы:

返回值 = true
返回值 = true

Используйте==иequals()для сравнения строк.

В String,==== сравнивает, совпадают ли адреса ссылок,equals()equals сравнивает, одинаково ли содержимое строк:

String s1 = "Hello";              // String создана напрямую
String s2 = "Hello";              // String создана напрямую
String s3 = s1;                   // Та же ссылка
String s4 = new String("Hello");  // Создан объект String
String s5 = new String("Hello");  // Создан объект String
 
s1 == s1;         // true, та же ссылка
s1 == s2;         // true, s1 и s2 оба находятся в публичном пуле, та же ссылка
s1 == s3;         // true, s3 имеет ту же ссылку, что и s1
s1 == s4;         // false, разные адреса ссылок
s4 == s5;         // false, разные адреса ссылок в куче
 
s1.equals(s3);    // true, одинаковое содержимое
s1.equals(s4);    // true, одинаковое содержимое
s4.equals(s5);    // true, одинаковое содержимое


Java String类Класс String в Java

Другие расширения