Hirdetés
- Az elmúlt 30 év legjobb processzorai
- Az év első felében érkeznek az AMD CES-en eltitkolt újdonságai
- Milyen videókártyát?
- A Micron szerint nem dobbantott a végfelhasználói piacról a Crucial eltűnésével
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Milyen széket vegyek?
- AMD K6-III, és minden ami RETRO - Oldschool tuning
- Két 16 GB-os GeForce gyártását szüntette meg az ASUS
- Hobby elektronika
- TCL LCD és LED TV-k
Ú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
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Az elmúlt 30 év legjobb processzorai
- Anglia - élmények, tapasztalatok
- Az év első felében érkeznek az AMD CES-en eltitkolt újdonságai
- Milyen videókártyát?
- Gyorsabb lesz a tárhely, de drágább lesz a Nothing Phone (4a)
- Yettel topik
- A Micron szerint nem dobbantott a végfelhasználói piacról a Crucial eltűnésével
- Milyen asztali (teljes vagy fél-) gépet vegyek?
- Építő/felújító topik
- sziku69: Szólánc.
- További aktív témák...
- Crucial BX500 500GB 2,5" SSD
- Samsung 960 EVO 250GB M2 NVMe SSD
- Inno3D RTX 3070 ICHILL 8GB / Csavarmatricás! / Beszámítás OK!
- Eladó Konfig Intel Core Ultra 7 265KF 32GB DDR5 2TB SSD RTX5070Ti 16GB O11 EVO Lamborghini!
- Bontatlan Dobozos Új Lenovo Thinkpad T14 G5 Laptop 14" -45% Ultra 7 155U 32/512 FHD+ Magyar!
- HIBÁTLAN iPhone 12 Pro 128GB Pacific Blue- 1ÉV GARANCIA -Kártyafüggetlen, MS3948
- ÁRGARANCIA!Épített KomPhone i5 14600KF 32/64GB DDR5 RAM RX 9070 16GB GAMER PC termékbeszámítással
- HP EliteBook 840 G9 i7-1265U 16GB 512GB 14" FHD+ 1 év teljeskörű garancia
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen2 munkaállomás - i7 11800H 64GB DDR4 1TB SSD RTX A2000 4GB W
- iPhone 13 mini 128GB Blue -1 ÉV GARANCIA - Kártyafüggetlen, MS4065, 90% Akkumulátor
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
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. 


