Mi a hiba ebben a kódban? (Java)
Figyelt kérdés
[...]
String szoveg = "Hello";
if (true) {
szoveg += " world!";
}
if (szoveg == "Hello world!") {
System.out.println("IGAZ");
} else {
System.out.println("HAMIS");
}
[...]
2021. jún. 1. 17:34
1/2 anonim válasza:
== operátorral referencia egyenlőséget vizsgálsz, az equals metódust használd helyette.
2/2 anonim válasza:
egy kis kifejtés, ha nem lenne teljesen tiszta (mert a kód alapján elég kezdőnek tűnsz)
a javában minden objektum (minden beépített változó ami nagybetűvel kezdődik, és minden általad definiált class) egy referencia, ami egy adott tárterületre mutat. ezért kell a legtöbb esetbe a new kulcsszo az objektum letrehozasahoz.
és ahogy az első válaszoló is írja, az "==" operátor azt nézi, hogy a két referencia (változó) ugyanarra a tárterületre mutat e. (side note, ha saját classokkal akarnál equalst használni, akkor azt önmagadnak kell majd felülírnod)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!