Wstyd przyznać, ale ostatnio zaczęło mi się podobać używanie 1 elementowej tablicy int'ów zamiast Integera jako wartości w Map...
To takie odświeżające móc napisać:
map.computeIfAbsent(c, key -> new int[1]);
map.get(c)[0]++;
zamiast:
map.put(c, map.getOrDefault(c,0)+1)
jak się np. liczy litery w String'u....
A później np:
if (--map.get(c)[0]==0) map.remove(c);
zamiast:
map.put(c, map.get(c)-1);
if (map.get(c)==0) map.remove(c);
A mimo wszystko nie jest to dużo mniej czytelny zapis, wydaje mi się nawet, że jedynie to -- w predecrementacji może być nieczytelne.
Kandydat mi pokazał ;-) tzn. wcześniej wiedziałem, że tak można, ale jakoś nigdy tego nie używałem.
Podobne postybeta
Zgadujemy wyniki wyborów ;-)
"Chiba widziałem Księżyc" ;-)
White & Nerdy
AST w akcji - zamieniamy źrodło w Java'ie w "rysunek" ;-)
"Plakat"
poniedziałek, marca 19, 2018
Zaczynam woleć Map<Key,int[]> nad Map<Key,Integer> ;-)
Subskrybuj:
Komentarze do posta (Atom)
Brak komentarzy:
Prześlij komentarz