Ú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?:))
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
- Projektor topic
- One otthoni szolgáltatások (TV, internet, telefon)
- Interactive Brokers társalgó
- A fociról könnyedén, egy baráti társaságban
- Porszívók - akkus és klasszikus vezetékes
- Milyen széket vegyek?
- AMD Navi Radeon™ RX 9xxx sorozat
- Linux kezdőknek
- eldiablo: 30 év után szakítottunk, de azért még beszélünk...
- További aktív témák...
- ÚJ Glorious Model O 2 Wireless Bolti ár:40k INGYEN FOXPOST
- ÚJ Glorious PC Gaming Race Model O Wireless Bolti ár:35k INGYEN FOXPOST
- ÚJ Glorious PC Gaming Race GMMK 2 Full-Size Billentyűzet Bolti ár:60k INGYEN FOXPOST
- Nintendo Switch Oled - The Legend of Zelda Edition
- Xiaomi 15 (12GB/256GB - Zöld, 2028.09.05-ig garanciás, újszerű) + ajándék Nillkin Super Frosted tok
- HP 200W töltők (19.5V 10.3A) kis kék, kerek, 4.5x3.0mm, 928429-002
- Apple iPhone 14 Plus 256GB / 100%-os akkumulátor / 12 hónap jótállással
- Dell Latitude 3510 15,6", i5 10210U, 8-16GB RAM, SSD, jó akku, számla, garancia
- GYÖNYÖRŰ iPhone 15 Pro Max 256GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS3943, 100% Akkumulátor
- AKCIÓ! HP EliteBook x360 830 G7 i5-10210U 16GB 1000GB 1 év garancia
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: Laptopszaki Kft.
Város: Budapest

