Junior — Middle
Kādu vērtību atgriež metode equals, ja tas tiek izsaukts vairākas reizes vienādiem objektiem?
sobes.tech AI
Atbilde no AI
Java valodā equals metode, ja tas tiek izsaukts vairākas reizes uz tiem pašiem objektiem, tas katru reizi jāatgriež true, ja objekti tiek uzskatīti par vienādiem saskaņā ar šīs metodes īstenošanas loģiku. Saskaņā ar equals līgumu, izsaukums a.equals(b) jābūt:
- Atspoguļojošam:
a.equals(a)vienmērtrue. - Simetriskam:
a.equals(b)ir vienāds arb.equals(a). - Transitīvam: ja
a.equals(b)unb.equals(c), tada.equals(c). - Konsekventam: atkārtoti izsaukumi
a.equals(b)atgriež to pašu vērtību, ja objekti nemainās.
Piemērs:
String s1 = "test";
String s2 = jauns String("test");
System.out.println(s1.equals(s2)); // true
System.out.println(s1.equals(s2)); // atkārtots izsaukums arī `true`
Tādējādi, vienādi objekti, equals metode konsekventi atgriež true.