Fixed some grammatical mistakes. (#24462)
parent
f0e5c7d08c
commit
833d798ad2
|
@ -4,7 +4,7 @@ localeTitle: Проверка равенства
|
|||
---
|
||||
# Проверка равенства
|
||||
|
||||
В Java существует два способа проверить, являются ли две переменные «одинаковыми»: `==` и `.equals()` . Однако эти два метода не работают одинаково.
|
||||
В Java существует два способа проверить, являются ли две переменные «одинаковыми»: `==` и `.equals()` . Однако эти методы работают не одинаково.
|
||||
|
||||
## Оператор `==`
|
||||
|
||||
|
@ -37,12 +37,12 @@ int var1 = 1;
|
|||
```java
|
||||
String s1 = "Bob";
|
||||
String s2 = "ob";
|
||||
s2 = "B" + s2; //s2 now is also "Bob"
|
||||
s2 = "B" + s2; //s2 теперь тоже "Bob"
|
||||
System.out.println(s1 == s2); //false
|
||||
System.out.println(s1.equals(s2)); //true
|
||||
```
|
||||
|
||||
Когда вы создаете новый класс в Java, вам часто нужно переопределить метод `equals()` , чтобы обеспечить более осмысленный способ сравнения двух объектов одного и того же класса. Как этот метод реализован полностью зависит от суждения разработчика.
|
||||
Когда вы создаете новый класс в Java, вам часто нужно переопределить метод `equals()` , чтобы обеспечить более осмысленный способ сравнения двух объектов одного и того же класса. Как этот метод реализован - полностью зависит от суждения разработчика.
|
||||
|
||||
Например, вы можете решить, что два `Person` должны считаться «равными», если их `name` и `dateOfBirth` одинаковы. Эта логика будет реализована в методе `equals()` класса `Person` :
|
||||
|
||||
|
@ -57,8 +57,8 @@ public class Person {
|
|||
}
|
||||
```
|
||||
|
||||
Большинство встроенных классов в Java, а также классы, предоставляемые популярными библиотеками, будут реализовывать метод `equals()` значимым образом.
|
||||
Большинство встроенных классов в Java, а также классы, предоставляемые популярными библиотеками, будут реализовывать метод `equals()` подобным образом.
|
||||
|
||||
Например, интерфейс `java.util.Set` указывает, что метод `equals()` `Set` возвращает true, если «указанный объект также является набором, два набора имеют одинаковый размер и каждый член указанного набора содержится в этом наборе ".
|
||||
Например, интерфейс `java.util.Set` указывает, что метод `equals()` `Set` возвращает true, если «указанный объект также является множеством, два множества имеют одинаковый размер и каждый член указанного множества содержится в этом наборе».
|
||||
|
||||
Однако, если класс не переопределяет реализацию `equals()` по умолчанию, применяется реализация по умолчанию, которая просто использует оператор `==` для сравнения двух объектов.
|
Loading…
Reference in New Issue