Hirdetés
- Óriási ugrás: teszten az ASUS Zenbook A16 és a Snapdragon X2
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Rövid időre leállhat a 8 GB-os GeForce RTX 5060 Ti gyártása
- Milyen billentyűzetet vegyek?
- Milyen TV-t vegyek?
- Vezetékes FÜLhallgatók
- Bambu Lab 3D nyomtatók
- TCL LCD és LED TV-k
- Vezetékes FEJhallgatók
- 4K vs 8K – Megéri-e a 8K TV 2026-ban?
Új hozzászólás Aktív témák
-
Szmeby
tag
Hogyan lehet vizsgálni, ha egy Objektum példánya létrejött (van, létezik)?
if (myObject != null) {
System.out.println("myObject objektumom létezik, hivogathatom a metódusait");
} else {
System.out.println("myObject objektumom nem létezik, ha ráhívok egy metódusára, NullPointerException a jutalmam");
}vagy
if (myObject instanceof String) {
System.out.println("myObject objektumom létezik, sőt azt is tudom róla, hogy String típusú, így bátran Stringgé castolhatom");
}Ha eleve String típusú a myObject változód, akkor felesleges instanceof-olni.
Pl.:String myObject = "kiskutya";
A bal oldalon jelölve vagyon, hogy ez legalább egy String, és mivel a java erősen típusos nyelv, compile error figyelmeztetne, ha valamit elcsesztél volna.Object myObject = "kiskutya";
Ebben az esetben nem lehetsz teljesen biztos benne, hogy ez egy String (annak ellenére, hogy erről a nyilvánvaló példáról ordít, hogy az), de ha szeretnéd String-ként kezelni, akkor castolnod kell mielőtt meghívod rajta a String osztély metódusait ((String)myObject).isEmpty(); Ha pedig ezt biztonságban szeretnéd elvégezni, akkor a castolás előtt érdemes csekkolni egy instanceof-fal, hogy valóban String van-e benne.
A null nem String, a null nem is Object, a null semmi. Az instanceof mindig false-szal fog visszatérni egy null referenciára, mert a semmiről nem lehet eldönteni annak típusát.És ha létrejött a példány, akkor még lehet null tartalmű, amire hogyan kérdeznétek rá? (azon túl, hogy kiteszed egy lokális változóba, ahogy az előbb írtad (ha nincs más, marad ez a módszer, csak elég bénácskának néz ki a kezdő szememnek))
Ha létrejött a példány, nem lehet null.Kiteheted lokális változóba, ha úgy kényelmes:
String product = info.getProductString();
if (product != null && product.equals("CM STORM INFERNO GAMING MOUSE")) {
System.out.println("match!!!");
}De nem kötelező, használhatod a gettert is újra meg újra:
if (info.getProductString() != null && info.getProductString().equals("CM STORM INFERNO GAMING MOUSE")) {
System.out.println("match!!!");
}De akár meg is mókolhatod a lekérdezéskor, hogy kiküszöböld az API hülyeségeit:
String product = info.getProductString() == null ? "" : info.getProductString(); // ez egy ternáris operátor, egyfajta kompakt if: ha a getter null, akkor üres stringet használ helyette, különben meg a getter által visszaadott nemnull értéket
if (product.equals("CM STORM INFERNO GAMING MOUSE")) {
System.out.println("match!!!");
}A java könyvek, vagy pl. az oracle tutorial relatíve korán elmagyarázza a java objektumok, referenciák, nullitás témakörét, érdemes rászánni azt a kis időt.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Milyen légkondit a lakásba?
- Óriási ugrás: teszten az ASUS Zenbook A16 és a Snapdragon X2
- Vivo X300 Ultra - tárcsázz, ha van rá keret!
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- sziku69: Fűzzük össze a szavakat :)
- Bestbuy játékok
- Fotók, videók mobillal
- Rövid időre leállhat a 8 GB-os GeForce RTX 5060 Ti gyártása
- The Division 2 (PC, XO, PS4)
- Digitális Állampolgárság Program DÁP
- További aktív témák...
- Szép Kis játékos HP,Core i7 10510u(8X4,9Ghz)MX 2/4GB DDR5 VGA,FullHD IPS,16-32GB RAM/256-512SSD
- Megkímélt ThinkPad Ryzen 5 Pro(12x4,0Ghz)16-32RAM/256-512SSD,100% akku,vil.bilI.
- Lenovo Thinkpad P50 15,6" FHD IPS kijelző, I7-6820HQ CPU, 16GB DDR4, 512GB NVMe SSD, 4GB Quadro VGA,
- HP 15,6",Core i7 1165G7(8x4,8Ghz)IRIS XE VGA,FullHD IPS,16-48GB RAM/256-512SSD,szép állapot
- MSI GTX 560 Ti Twin Frozr II OC 1 GB GDDR5 VGA
- HIBÁS ÉRINTÉS NEM MEGY Surface Pro 8 i7-1185G7 16GB RAM 256GB SSD 5G LTE szép állapot
- Honor 200 Pro / 12/512GB / Kártyafüggetlen / 12Hó Garancia
- Apple iPhone 16e 128 GB White 100% Akkumulátor 12 hónap Garancia Beszámítás Házhozszállítás
- HIBÁTLAN iPhone 14 Plus 256GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS4561, 100% Akksi
- Xbox One / Xbox Series játékok
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

