Hirdetés
Új hozzászólás Aktív témák
-
Lacces
őstag
Sziasztok!
Adott volt ez a TreeMap
private Map<Sör, Integer> sörök = new TreeMap<Sör, Integer>();És csak eme 3 névteret lehetett használni:
import java.util.Map;
import java.util.Set;
import java.util.TreeMap;És kellett hozzá írni egy feltöltő metódust. Nézegettem a neten és az alábbi 2 megoldást találtam. Én az előbbit csináltam meg, ami hosszabb a másiknál.
A kód nem fordul le, mert a Java fordító kérte, hogy Compare interfészt is valósítsak meg a Sör osztályra, mert a Treemap Key-je egy BST-ben van rendezve. Ugyanezt a metódikát követve C#-ban összejött.
Kérdésem az lenne, hogy melyiket érdemes használni a kettő közül? És miért?
(Ilyen ForEach-es bejárás esetén, külön-külön találtam őket, és mindkettő jónak tűnik, elméletben)Map.Entry<Key, Value> VS. KeySet() - érdekel melyiket érdemesebb használni
De ha van más ötlet is, akkor azt is szívesen fogadok, tanulni, fejlődni is akarok suli mellett. De én magamtól e 2 megoldásra jutottam
Én így írtam meg.
public void feltölt(Sör sör, int dl) {
int d = 0;
Sör s = null;
for (Map.Entry<Sör, Integer> item : sörök.entrySet()) {
if (item.getKey().equals(sör)) {
d = item.getValue();
s = item.getKey();
}
}
if (s != null) {
sörök.put(s, d + dl);
}
else{
sörök.put(sör, dl);
}
}Másik rövidebb verzió:
public void feltölt(Sör sör, int dl) {
int dec;
for (Sör s : sörök.keySet())
if (s.equals(sör)){
dec = sörök.get(s);
sörök.put(s,dec + dl);
return;
}
sörök.put(sör, dl);
}
Új hozzászólás Aktív témák
A topicot kiemeltem. Valaki nem akar egy nyitó hsz-t írni?:))
- Mégis mi értelme az Xbox PC-nek, ha limitálja a hardverválasztékot?
- Kerékpárosok, bringások ide!
- Azonnali VGA-s kérdések órája
- Milyen okostelefont vegyek?
- Jogász topic
- NVIDIA GeForce RTX 3080 / 3090 / Ti (GA102)
- RAM topik
- REpont és hulladékgazdálkodás
- IFA 2025: Nem is látszik, hogy strapatelefon
- TCL LCD és LED TV-k
- További aktív témák...
- HIBÁTLAN iPhone 13 mini 128GB Starlight -1 ÉV GARANCIA - Kártyafüggetlen, MS3276
- Új Lenovo 16 Ideapad Slim3 WUXGA IPS Ryzen5 7530U 4.5Ghz 16GB 512GB Radeon RX Vega7 Win11 Garancia
- Lenovo ThinkPad T14 Gen1 Ryzen5
- Honor Magic5 Lite 128GB, Kártyafüggetlen, 1 Év Garanciával
- Tablet felvásárlás!! Apple iPad, iPad Mini, iPad Air, iPad Pro
Állásajánlatok
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest
Cég: CAMERA-PRO Hungary Kft.
Város: Budapest