- Milyen okostelefont vegyek?
- Sony Xperia 1 VII - Látod-e, esteledik
- Xiaomi 14T - nem baj, hogy nem Pro
- Redmi Watch 5 - formás, de egyszerű
- Google Pixel topik
- Samsung Galaxy Z Fold7 - ezt vártuk, de…
- Samsung Galaxy Watch8 - Classic - Ultra 2025
- Redmi Note 13 Pro 5G - nem százas, kétszázas!
- Yettel topik
- Xiaomi 14 - párátlanul jó lehetne
Hirdetés
Új hozzászólás Aktív témák
-
válasz
DreaD88 #3153 üzenetére
Definiáld felül a háromszög osztályban az Object ősosztály equals metódusát, és akkor adjon vissza igazat, ha a két háromszög területe megegyezik. Így amikor hozzáadogatod a háromszögeket a HashSet-hez, azok nem kerülnek bele a halmazba, amelyeknek a területe már szerepel.
Kódban ez vhogy így néz ki (nálam most a háromszög osztályt Triangle-nek hívják):
@Override
public boolean equals(Object o) {
if (o instanceof Triangle) {
Triangle t = (Triangle) o;
if (t.getArea() == getArea()) {
return true;
}
}
return false;
}
// A hashCode metódust is illik felüldefiniálni,
// ha az equals-t felüldefiniálod. Az a lényeg,
// hogy egyezzen meg annak a két objektumnak a hashkódja,
// amelyekre az equals igazat ad vissza.
@Override
public int hashCode() {
return (int) getArea(); // ezt lehet máshogy is, de a célnak megfelel
} -
Lacces
őstag
válasz
DreaD88 #3153 üzenetére
Én úgy tudom, hogy alapból csak egyet is rak bele. És ezért lassú az elem beillesztése, de gyors az elem visszaadása. De mindig van tőlem okosabb a fórumban, érdemes rájuk várni
Amúgy itt találsz példákat a hashset műveletekhez, ha lejebb mész, akkor látsz még további témákat, remove, add, select stb.
Van a
Set h = new HashSet();
HashSet<Integer> h = new HashSet() típusú is -
Karma
félisten
válasz
DreaD88 #3153 üzenetére
Ha a "hashset-be adom meg" alatt azt érted, hogy létrehozol egy HashSetet, konstruktorban átadva a már meglévő kollekciódat; a "mindenből csak egyet ad vissza" alatt meg iterációt (foreach vagy manuális iteráció, mindegy) akkor igaz.
Azzal a kitétellel, hogy az elemek sorrendje összezilálódhat, mert semmi garancia nincs. Ha azt akarod, hogy a sorrend is megmaradjon, LinkedHashSetet használj.
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Music Hall a15.3 integrált erősítő Phono bemenettel
- Keresek főként szolgáltató függő Apple Iphone készülékeket
- Kalandvágyók figyelmébe! iMars Android car player - Android autós fejegység
- Sony STR DH 130
- ASUS ZenBook 14 OLED UM3402 - 14"2.8K OLED - Ryzen 7 7730U - 16GB - 512GB - Win11 - 1,5 év garancia
- 11 GB-os RTX 2080 TI - HP OEM - garanciával
- HIBÁTLAN iPhone 13 mini 128GB Green -1 ÉV GARANCIA - Kártyafüggetlen, MS3140
- Samsung Galaxy S24 Ultra / 12RAM 1024GB / Gyárifüggetlen / 12hó Garanciával
- HIBÁTLAN iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3130, 94% Akkumulátor
- Eredeti Lenovo USB-C 65W töltő
Állásajánlatok
Cég: FOTC
Város: Budapest