Hirdetés
Új hozzászólás Aktív témák
-
Szmeby
tag
válasz
Ablakos
#11866
üzenetére
A
containsteljeskörűen működik. Ha belenézel azObjectosztályba (ami minden osztály őse), láthatod, hogy azequalsmetódus referenciák egyenlőségét vizsgálja - lévén más információja nincs az osztályról. Azt csinálja, mint amit az == operátor.Tehát az
equalsés egyben acontainsalapértelmezett működése az, hogy csak akkor tekint két objektumot egyenlőnek / a lista egy tagjának, ha az az objektum ugyanaz az objektum, mondjuk úgy, hogy ugyanazon a memóriacímen található adathalmaz.Abban a pillanatban, hogy kiadod a
newutasítást, a jvm egy vadonatúj objektumot fog gyártani neked. Még ha ugyanazt a szöveget adod is meg neki a könyv címe paraméterben, még ha ugyanaz az évszám, még ha látszólag ugyanúgy is néz ki az az objektum, mint egy másik, a referenciájuk eltér, hiszen anewutasítással ezt kérted a jvm-től, egy új objektumot.A referencia alapú összehasonlítás időnként hasznos dolog, de a modelljeinkben többnyire nem ez a legjobb megoldás. Ezért készítünk az objektumainknak saját
equalst, amikor azokat egymással össze akarjuk hasonlítani, és azt várjuk el tőle, hogy egyenlőnek tekintsen két könyv objektumot, ahol a cím és az évszám egyenlő. Ezt sajnos meg kell írnod, mert a jáva túl buta, hogy kitalálja a programozó gondolatait, elvárásait.
(És készítünk nekik saját hashcode implementációt is, amikor azokat mondjuk HashSet-ben kívánjuk gyűjtögetni, vagy HashMap kulcsaként akarjuk felhasználni.)Tehát a
Book b1 = new Book("a", 1);és aBook b2 = new Book("a", 1);eltérő referenciával bír, az alapértelmezettequalsszerint ők különböző objektumok. Míg aBook b3 = b1;ugyanazzal a referenciával bír, mint a b1 objektumod, az alapértelmezettequalsszerint ők ugyanazok az objektumok.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Itt a Valve GŐZGÉP — Steam Machine, mi vagy te? 🧐
- Formula-1
- Hyundai, Kia topik
- PlayStation 5
- Futás, futópályák
- WoW avagy World of Warcraft -=MMORPG=-
- HiFi műszaki szemmel - sztereó hangrendszerek
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Nintendo Switch 2
- Direct One (műholdas és online TV)
- További aktív témák...
- Új Biztosító Által Cserélt iPhone 14 Pro 128GB Független Lila/3 hónap gar./p4612
- DJI Mavic 2 Pro drón +koffer +szűrők +landing pad +SD kártya
- Oneplus Pad lite 128 Gb Új, bontatlan
- Latitude 7440 27% 14" FHD+ IPS i7-1365U 32GB 1TB NVMe magyar vbill ujjlolv gar
- OnePlus 12 256Gb 1 éves, 2027. szeptemberig gaarnciális MAGYAR vásárlás
- XBOX Series X 1TB // Számla+Garancia //
- Dell latitude, precision, xps, magyar világítós billentyűzetek eladóak
- Apple iPhone 11 64GB, Kártyafüggetlen, 1 Év Garanciával
- BESZÁMÍTÁS! MSI B450M R5 5600X 32GB DDR4 1TB SSD RTX 4070 12GB Rampage SHIVA Cooler Master 750W
- BESZÁMÍTÁS! Gigabyte B650M R5 7600X 32GB DDR5 512GB SSD RX 6900XT 16GB Zalman Z1 PLUS NZXT 850W
Állásajánlatok
Cég: ATW Internet Kft.
Város: Budapest
Cég: BroadBit Hungary Kft.
Város: Budakeszi


