Een fragment uit een lezing met een mentor als onderdeel van de Codegym University-cursus. Schrijf je in voor de volledige cursus.


"Ik wil je wat vertellen over het vergelijken van variabelen in Java. "

"Je kent de eenvoudigste vergelijkingsoperatoren al - kleiner dan (<) en groter dan (>)."

"Ja."

"Er zijn ook operatoren zoals gelijk aan (==) en niet gelijk aan (!=). Evenals, kleiner dan of gelijk aan (<=) en groter dan of gelijk aan (>=)."

"Nu wordt het interessant."

"Merk op dat er geen =< of => operatoren zijn in Java!"

" Het = teken wordt gebruikt voor toewijzingsbewerkingen. Daarom worden twee gelijktekens (==) gebruikt om gelijkheid te testen. Gebruik de != operator om te controleren of variabelen niet gelijk zijn ."

"Ik zie."

"Bij het vergelijken van twee variabelen in Java met behulp van de == operator, vergelijken we de inhoud van de variabelen."

"Dus voor primitieve variabelen worden hun waarden vergeleken ."

"Voor referentievariabelen worden de referenties vergeleken . Stel dat we identieke maar verschillende objecten hebben. Omdat verwijzingen daarnaar verschillend zijn , zal een vergelijking aantonen dat ze niet gelijk zijn, dat wil zeggen dat het resultaat van de vergelijking onwaar zal zijn . Een vergelijking van referenties zal waar zijn alleen als beide verwijzingen naar hetzelfde object verwijzen. "

"Om de interne inhoud van objecten te vergelijken, gebruiken we de speciale equals- methode. Deze methode (en alle methoden van de klasse Object) worden door de compiler aan uw klasse toegevoegd, zelfs als u ze niet declareert. Ik zal u enkele voorbeelden laten zien: "

Code Uitleg
1
int a = 5;
int b = 5;
System.out.println(a == b);
Vergelijk primitieve typen.
true wordt weergegeven op het scherm.
2
Cat cat1 = new Cat("Oscar");
Cat cat2 = cat1;
System.out.println(cat1 == cat2);
Referenties vergelijken .
true wordt weergegeven op het scherm.
Beide variabelen slaan verwijzingen naar hetzelfde object op .
3
String s = new String("Mom");
String s2 = s;
System.out.println(s == s2);
Referenties vergelijken .
true wordt weergegeven op het scherm.
Beide variabelen slaan verwijzingen naar hetzelfde object op .
4
Cat cat1 = new Cat("Oscar");
Cat cat2 = new Cat("Oscar");
System.out.println(cat1 == cat2);
Referenties vergelijken .
false verschijnt op het scherm.
De twee variabelen verwijzen naar identieke Cat-objecten, maar niet dezelfde.
5
String s = new String("Mom");
String s2 = new String("Mom");
System.out.println(s == s2);
Referenties vergelijken .
false verschijnt op het scherm.
De twee variabelen verwijzen naar identieke String-objecten, maar niet naar dezelfde.
6
String s = new String("Mom");
String s2 = new String("Mom");
System.out.println(s.equals(s2));
Objecten vergelijken .
true wordt weergegeven op het scherm.
De twee variabelen verwijzen naar identieke String-objecten

"Oh, dat was ik bijna vergeten! Hier zijn wat oefeningen voor je:"