Hirdetés
- AMD GPU-k jövője - amit tudni vélünk
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Apple MacBook
- Milyen processzort vegyek?
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- NVIDIA GeForce RTX 5070 / 5070 Ti (GB205 / 203)
- Milyen TV-t vegyek?
- OLED TV topic
- ASUS notebook topic
- Xiaomi Pad 7 Pro - fél kiló, maradhat!
Hirdetés
Talpon vagyunk, köszönjük a sok biztatást! Ha segíteni szeretnél, boldogan ajánljuk Előfizetéseinket!
Ú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?:))
- Medence topik
- AMD GPU-k jövője - amit tudni vélünk
- Autós topik látogatók beszélgetős, offolós topikja
- AMD Ryzen 9 / 7 / 5 9***(X) "Zen 5" (AM5)
- Apple MacBook
- Battlefield 6
- PlayStation 5
- Milyen processzort vegyek?
- D1Rect: Nagy "hülyétkapokazapróktól" topik
- NVIDIA GeForce RTX 5080 / 5090 (GB203 / 202)
- További aktív témák...
- Layer 2 Plus (Layer 3 Lite) Passzív rack switch, 24x1G + 4x10G SFP+ , SFP-kkel FS S3900-24T4S-R
- Eladó/Lenovo X240 Ultrabook/I5-4300U/8GB DDR3/Win 10Pro/12,5"!!!
- LG OLED55C9 prémium TV - 140cm, 4k, 120Hz - apró vizuális hibával
- Erős Gamer / Munka PC i7-14700, RTX 3070 Ti, 32GB RAM, 1TB SSD
- Samsung Galaxy A52S 5G Dual 8/256
- AKCIÓ! Asus ROG Flow Z13 +ROG XG RTX 3070- i9 12900H 16GB DDR5 1TB SSD RTX 3050Ti 4GB + RTX 3070 W11
- DELL Precision 7540 i7-9850H Quadro T2000 16GB 512GB 1 év garancia
- DELL Precision 5560 i7-11850H 16GB 512GB T1200 FHD+ 1 év garancia
- LG 27GS95QE - 27" OLED / QHD 2K / 240Hz & 0.03ms / 1000 Nits / NVIDIA G-Sync / AMD FreeSync
- Telefon felvásárlás!! Honor 200 Lite, Honor 200, Honor 200 Pro, Honor 200 Smart
Állásajánlatok
Cég: FOTC
Város: Budapest