Hirdetés
- Apple iPhone 16 - ígéretek földje
- Apple Watch Sport - ez is csak egy okosóra
- Samsung Galaxy A55 - új év, régi stratégia
- Samsung Galaxy S25 - végre van kicsi!
- Itt a Galaxy S26 széria: az Ultra fejlődött, a másik kettő alig
- Xiaomi 17 Ultra - jó az optikája
- Samsung Galaxy S23 Ultra - non plus ultra
- Android alkalmazások - szoftver kibeszélő topik
- One mobilszolgáltatások
- Bemutatkozott a Poco X7 és X7 Pro
Ú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?:))
- Beszámítás! MSI Gaming Cyborg A15 FHD Gamer notebook - R5 240 16GB DDR5 512GB SSD RTX 5050 8GB
- HIBÁTLAN iPhone 12 Pro 256GB Graphite - 1 ÉV GARANCIA - Kártyafüggetlen, MS3283
- HIBÁTLAN iPhone SE 2020 64GB Red -1 ÉV GARANCIA - Kártyafüggetlen, MS4366
- iKing.Hu - Apple iPhone 15 Pro Max Black Titanium 100% Akku
- Samsung Galaxy A80 128GB, Kártyafüggetlen, 1 Év Garanciával
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

