Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- sziku69: Szólánc.
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- Meggyi001: Eldugott helyek Párizsban, amiket jó eséllyel még nem láttál... 2. rész.
- Brogyi: CTEK akkumulátor töltő és másolatai
- GoodSpeed: Egy bihari a Hajdúságban
- Elektromos rásegítésű kerékpárok
- Parci: Milyen mosógépet vegyek?
- Gurulunk, WAZE?!
Új hozzászólás Aktív témák
-
Szmeby
tag
válasz
Ablakos #11866 üzenetére
A
contains
teljeskörűen működik. Ha belenézel azObject
osztályba (ami minden osztály őse), láthatod, hogy azequals
metó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 acontains
alapé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
new
utasí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 anew
utasí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
equals
t, 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értelmezettequals
szerint ők különböző objektumok. Míg aBook b3 = b1;
ugyanazzal a referenciával bír, mint a b1 objektumod, az alapértelmezettequals
szerint ő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?:))
- Samsung Galaxy Watch7 - kötelező kör
- AMD Ryzen 9 / 7 / 5 / 3 5***(X) "Zen 3" (AM4)
- Folyószámla, bankszámla, bankváltás, külföldi kártyahasználat
- Mikrotik routerek
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Samsung Galaxy A56 - megbízható középszerűség
- Nem lesz iPhone 19
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- VGA kibeszélő offtopik
- Socket AM4
- További aktív témák...
- D5 Gamer PC - i5 12400f, RTX 3070 és 16gb DDR5 RAM + GARANCIA
- Nitro ANV15-41 15.6" FHD IPS Ryzen 7 7735HS RTX 4050 16GB 1TB NVMe magyar vbill gar
- Precision 7680 16" FHD+ IPS i7-13850HX RTX 2000 Ada 32GB 1TB NVMe IR kam gar
- PlayStation 4 500GB konzol eladó
- XPS 17 9720 17" FHD+ IPS i7-12700H RTX 3060 16GB 1TB NVMe ujjlolv IR kam gar
- Lenovo ThinkPad X13 Gen 2 i5-1145G7 16GB 512GB FHD+ 100% sRGB - 1 év garancia
- Wacom Bamboo One CTF-430 rajztábla
- Eladó Oppo A78 5G 4/128GB / 12 hó jótállás
- Workstation bazár - Lenovo, HP, Dell - számla, 6 hó garancia
- GYÖNYÖRŰ iPhone 12 Pro 256GB Gold -1 ÉV GARANCIA - Kártyafüggetlen, MS3438, 94% Akkumulátor
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: NetGo.hu Kft.
Város: Gödöllő