Hirdetés
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Magga: PLEX: multimédia az egész lakásban
- pointer4: Force Feedback az ülésben is - Házi Készítésű Övfeszítő
- Luck Dragon: Asszociációs játék. :)
- Dr. Mózes: Lakberendezési tanácskérés
- sziku69: Szólánc.
- eldiablo: 30 év után szakítottunk, de azért még beszélünk...
- eBay-es kütyük kis pénzért
- gban: Ingyen kellene, de tegnapra
- Luck Dragon: Alza kuponok – aktuális kedvezmények, tippek és tapasztalatok (külön igényre)
Új hozzászólás Aktív témák
-
Szmeby
tag
Remek... letelt az időkorlát. -.-
Szóval azt még elfelejtettem, hogy ha Set-re váltasz, akkor a Point.equals mellett a Point.hashcode-ot is implementálnod kell. Az IDE elvégzi helyetted, de a lényeg:
A HashSet úgy működik, hogy a beletolt objektumra először hashcode-ot számol, ez csak egy szám. Ehhez a hashcode-hoz létrehoz egy izét, nevezzük vödörnek, és ebbe a vödörbe dobja bele az objektumodat.
Ha egy újabbat adnál hozzá, akkor arra is hashcode-ot számol, és csak az adott hashcode-hoz tartozó vödörrel foglalkozik, végigmászik a vödör tartalmán, az equals-szal csekkolja, hogy benne van-e már, és ha talált, akkor nem teszi bele újra.
Ha a hashcode számítást elcseszed, akkor előfordulhat olyan, hogy van 2 objektumod, ami az equals szerint azonos, de a hashcode szerint nem. Mindkettő bele fog kerülni a Set-be (!!), mert a másik az eltérő hashcode miatt másik vödörbe kerül. Ilyet sose csinálj.
Vagy például megváltozik az objektumod állapota (mondjuk most nem, mert minden final, de máskor, mással, másnál igen
), és a megváltozott állapot miatt megváltozhat a hashcode is. Na az az objektumod, ha benne volt egy set-ben, akkor ott is marad, sose találod meg. Vicces dolgok ezek. 
Gondolhatnád, hogy akkor legyen a hashcode mindig 1, abból baj nem lehet. Jó gondolat, de lassú lesz, épp azért szegmentálunk sok kis vödörre relatíve kis számításigényű megoldásokkal, hogy csak egy kis vödör tartalmán kelljen végigsuhanni, gyorsan el lehet dönteni, hogy valami benne van-e abban a Set-ben avagy sem.
Új hozzászólás Aktív témák
Hirdetés
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Épített vízhűtés (nem kompakt) topic
- Bittorrent topik
- Poco F8 Ultra – forrónaci
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- Az idei év nagy kérdése: bele lehet férni 8 GB VRAM-ba?
- Magga: PLEX: multimédia az egész lakásban
- Google Pixel topik
- Kerékpárosok, bringások ide!
- A fociról könnyedén, egy baráti társaságban
- pointer4: Force Feedback az ülésben is - Házi Készítésű Övfeszítő
- További aktív témák...
- Eladó Konfig I5 7400 16GB DDR4 240GB SSD 512GB HDD GTX1660TI 6GB!
- ÚJ Glorious PC Gaming Race Model WIred O illetve I Bolti ár:14k INGYEN FOXPOST
- ÚJ Glorious PC Gaming Race Model I 2 Wireless Bolti ár:40k INGYEN FOXPOST
- ÚJ Glorious PC Gaming Race Model D/D- USB Bolti ár:10k INGYEN FOXPOST
- ÚJ Glorious Model O 2 Wireless Bolti ár:40k INGYEN FOXPOST
- Razer Barracuda X Chroma Black gamer Fejhallgató
- GYÖNYÖRŰ iPhone 13 mini 128GB Midnight -1 ÉV GARANCIA - Kártyafüggetlen, MS4077
- Samsung Galaxy S24 Ultra 512GB,Átlagos,Dobozaval,12 hónap garanciával
- 193 - Lenovo Legion 5 (15IRX10) - Intel Core i7-14700HX, RTX 5070
- Új, Aktiválatlan iPhone 17 Pro Max (256 GB) (rendelhető)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
), és a megváltozott állapot miatt megváltozhat a hashcode is. Na az az objektumod, ha benne volt egy set-ben, akkor ott is marad, sose találod meg. Vicces dolgok ezek. 

