Ett föreläsningsutdrag med en mentor som en del av Codegym University-kursen. Anmäl dig till hela kursen.


"Jag skulle vilja berätta lite om att jämföra variabler i Java. "

"Du känner redan till de enklaste jämförelseoperatorerna – mindre än (<) och större än (>)."

"Japp."

"Det finns också operatorer som lika med (==) och inte lika med (!=). Samt mindre än eller lika med (<=) och större än eller lika med (>=)."

"Nu börjar det här bli intressant."

"Observera att det inte finns några =< eller => operatorer i Java!"

" Tecknet = används för tilldelningsoperationer. Det är därför två likhetstecken (==) används för att testa likhet. För att kontrollera att variabler inte är lika , använd operatorn != ."

"Jag förstår."

"När vi jämför två variabler i Java med operatorn ==, jämför vi innehållet i variablerna."

"Således, för primitiva variabler jämförs deras värden ."

"För referensvariabler jämförs referenserna . Antag att vi har identiska men distinkta objekt. Eftersom referenser till dem är olika kommer en jämförelse att visa att de inte är lika, dvs jämförelseresultatet blir falskt . En jämförelse av referenser kommer att vara sann . bara om båda referenserna pekar på samma objekt. "

"För att jämföra objekts interna innehåll använder vi den speciella lika- metoden. Denna metod (och alla metoder i klassen Object) läggs till din klass av kompilatorn även om du inte deklarerar dem. Låt mig visa dig några exempel: "

Koda Förklaring
1
int a = 5;
int b = 5;
System.out.println(a == b);
Jämför primitiva typer.
sant kommer att visas på skärmen.
2
Cat cat1 = new Cat("Oscar");
Cat cat2 = cat1;
System.out.println(cat1 == cat2);
Jämför referenser .
sant kommer att visas på skärmen.
Båda variablerna lagrar referenser till samma objekt .
3
String s = new String("Mom");
String s2 = s;
System.out.println(s == s2);
Jämför referenser .
sant kommer att visas på skärmen.
Båda variablerna lagrar referenser till samma objekt .
4
Cat cat1 = new Cat("Oscar");
Cat cat2 = new Cat("Oscar");
System.out.println(cat1 == cat2);
Jämför referenser .
false kommer att visas på skärmen.
De två variablerna refererar till identiska Cat-objekt, men inte samma.
5
String s = new String("Mom");
String s2 = new String("Mom");
System.out.println(s == s2);
Jämför referenser .
false kommer att visas på skärmen.
De två variablerna refererar till identiska String-objekt, men inte samma.
6
String s = new String("Mom");
String s2 = new String("Mom");
System.out.println(s.equals(s2));
Jämför objekt .
sant kommer att visas på skärmen.
De två variablerna refererar till identiska String-objekt

"Åh, jag glömde nästan! Här är några övningar för dig:"