- Steampunk hangulatú, nem túl drága, de fémházas klaviatúrát mutatott be a Yunzii
- Közel 100 maggal érkezik a kínai szerverprocesszor
- Félkörpanorámás ASUS ház érkezett a nem túlságosan drága halmazba
- Rejtett csatlakozós VGA MSI módra
- Powerbank választás okosan: mAh, Wattóra, PD... mit jelentenek valójában?
- Milyen széket vegyek?
- Házimozi belépő szinten
- Közel 100 maggal érkezik a kínai szerverprocesszor
- Hisense LCD és LED TV-k
- Intel Core i5 / i7 / i9 "Alder Lake-Raptor Lake/Refresh" (LGA1700)
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Milyen házat vegyek?
- OLED TV topic
- Milyen pendrive-ot vegyek?
- 5.1, 7.1 és gamer fejhallgatók
Ú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?:))
- Telekom mobilszolgáltatások
- Milyen széket vegyek?
- Megérkeztek a Xiaomi 15T sorozatának telefonjai Magyarországra
- Fejhallgatós találkozó
- Házimozi belépő szinten
- Közel 100 maggal érkezik a kínai szerverprocesszor
- Hisense LCD és LED TV-k
- Milyen légkondit a lakásba?
- PlayStation 5
- Mikrotik routerek
- További aktív témák...
- Ryzen PC 9800X3D - RTX 5070 TI - B850 TUF - 32GB DDR5 - 1 TB M.2 SSD - 360 AIO/Garanciás-Beszámítás
- iPhone 16 PRO MAX 256GB 3 hónapos MEDIAMARKT számla! 2028 júniusig Apple garancia! Akku 100%!
- Dobozos , garanciális 27"-os Acer Nitro ívelt monitor leárazás
- Apple Macbook Air 13,6 M4 16GB/256GB - 7 Ciklus - 100% Akkumulátor - MAGYAR - Ezüst - 3 év garancia
- Apple iMac 19.2 i5-8500 Radeon Pro 560X 4GB 16GB 256GB SSD 21.5" 4K Retina
- BESZÁMÍTÁS! MSI B760 i7 13700K 32GB DDR4 2TB SSD RTX 4080 16GB be quiet! 500DX Seasonic 750W
- GYÖNYÖRŰ iPhone 13 Pro Max 128GB Silver -1 ÉV GARANCIA - Kártyafüggetlen, MS3551,100% Akkumulátor
- HP EliteBook 840 G7 i5-10210U 16GB 256GB 1 év garancia
- HIBÁTLAN iPhone 14 Pro 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3519
- GYÖNYÖRŰ iPhone 11 Pro Max 64GB Graphite - 1 ÉV GARANCIA - Kártyafüggetlen, MS3260, 100% Akkumulátor
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest