- Red Magic 11 Air – vékony házból süvít a szél
- Csíptetős fülesek csatája – Sony LinkBuds Clip vs. Huawei FreeClip 2
- Mérföldkő a szilárdtest-akkuknál: fontos lépést tett a QuantumScape
- Újabb óriásakku a Honortól: a X80 lehet a következő 10 000 mAh-s modell
- iPhone 18 Pro Max: kis kapacitásbővítés hoz nagy előrelépést üzemidőben
- Poco F7 – bajnokesélyes
- Külföldi prepaid SIM-ek itthon
- Netfone
- Télvíz idején érkezik az iPhone 17e
- Milyen okostelefont vegyek?
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
- Rövid teaserrel erősítette meg a Google a Pixel 10a érkezését
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Hivatalos a OnePlus 13 startdátuma
- Honor Magic6 Pro - kör közepén számok
Ú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?:))
- Keresek Galaxy S21/S21+/S21 Ultra/S21 FE
- Lenovo ThinkCentre/ Dell OptiPlex/ Hp EliteDesk mini, micro PC/ 8.-9.-10.gen/ Számla/garancia
- BESZÁMÍTÁS! LENOVO ThinkPad P15 Gen1 munkaállomás - i7 10875H 16GB DDR4 512GB SSD Quadro T1000 4GB W
- Samsung Galaxy S22 / 8/128GB / Kártyafüggetlen / 12Hó Garancia
- Készpénzes / Utalásos Számítógép felvásárlás! Személyesen vagy Postával!
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: Laptopműhely Bt.
Város: Budapest



