Page 197 - 6253
P. 197
Зберегти зміни в об'єкті класу String можна тільки за допомогою оператора
присвоєння, тобто шляхом встановлення посилання на новий об'єкт.
У наступному прикладі розглядаються особливості зберігання та ідентифікації
об'єктів на прикладі виклику методу equals(), що порівнює рядок типу String із
вказаним об'єктом і методу hashCode(), який обчислює хеш-код переданого об'єкта.
// Порівняння посилань та об'єктів
public class Main {
public static void main(String[] args) {
String s1 = "Java";
String s2 = "Java";
String s3 = new String("Java");
System.out.println(s1 + "==" + s2 + " : " + (s1 == s2));
System.out.println(s1 + "==" + s3 + " : " + (s1 == s3));
System.out.println(s1 + " equals " + s2 + " : " +
s1.equals(s2));
System.out.println(s1 + " equals " + s3 + " : " +
s1.equals(s3));
System.out.println(s1.hashCode());
System.out.println(s2.hashCode());
System.out.println(s3.hashCode());
}
}
Запустивши програму на виконання отримаємо наступний результат:
Java==Java : true
Java==Java : false
Java equals Java : true
Java equals Java : true
2301506
196