Middle
Koje dodatne metode za rad sa asocijativnim nizovima (kolekcija Map) su se pojavile u Java 8?
sobes.tech АИ
Одговор од АИ
forEach(BiConsumer<? super K, ? super V> action): Izvršava zadatuakcijuza svaku par ključ-vrednost u Map.replaceAll(BiFunction<? super K, ? super V, ? extends V> function): Zamenjuje svaku vrednost u Map rezultatom primenefunctionna njen ključ i trenutnu vrednost.compute(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction): Pokušava da izračuna mapiranje za zadati ključ koristeći zadatu funkciju za premapiranje.computeIfAbsent(K key, Function<? super K, ? extends V> mappingFunction): Ako zadati ključ još uvek nije povezan sa vrednošću (ili je povezan sanull), pokušava da izračuna njegovu vrednost pomoću zadate funkcije za mapiranje i unese je u Map ako nijenull.computeIfPresent(K key, BiFunction<? super K, ? super V, ? extends V> remappingFunction): Ako je zadati ključ već povezan sa vrednošću (nenull), pokušava da izračuna novo mapiranje koristeći zadatu funkciju za premapiranje.merge(K key, V value, BiFunction<? super V, ? super V, ? extends V> remappingFunction): Ako zadati ključ još uvek nije povezan sa vrednošću, povezuje ga sa datom ne-nullvrednošću. U suprotnom, zamenjuje povezanu vrednost rezultatom primene funkcije za premapiranje na trenutnu vrednost i datu vrednost.putIfAbsent(K key, V value): Ako zadati ključ još uvek nije povezan sa vrednošću (ili je povezan sanull), povezuje ga sa datom vrednošću i vraćanull, u suprotnom vraća trenutnu povezanu vrednost.remove(Object key, Object value): Uklanja zapis za zadati ključ samo ako je trenutno povezan sa zadatom vrednošću.replace(K key, V oldValue, V newValue): Zamenjuje zapis za zadati ključ samo ako je trenutno povezan sa vrednošćuoldValue.replace(K key, V value): Zamenjuje zapis za zadati ključ samo ako je trenutno povezan sa nekom vrednošću.
Ove metode olakšavaju rad sa Map, omogućavajući izvođenje atomskih operacija i korišćenje lambda izraza za fleksibilniju obradu elemenata.