Ben bir anahtar olarak bir tamsayı ve bir değer olarak dizeleri listesini içerecek bir HashMap oluşturmaya çalışıyorum: ben bir şekilde verimli bir şekilde doldurmak istiyoruzJava 8 harita birleştirme yöntemi
Map<Integer, List<String>> map = new HashMap<Integer, List<String>>(30);
.
map.merge(search_key, new ArrayList<>(Arrays.asList(new_string)), (v1, v2) -> {
v1.addAll(v2);
return v1;
});
Bu kod küçük
ve zarif ama benim sorunum ben her çağrıda yeni listesi oluşturmak şudur: Ne geldi oldu. İlk birleştirme sonrasında Liste oluşturmayı atlamanın ve oluşturulan ilk listeye yeni_string eklemenin bir yolu var mı?
ama kırık “Bu kod küçük ve zarif”. 'Arrays.asList' sonucunu 'addAll' çağırmaya çalışıyorum… – Holger
@Holger Haklısınız. Benim hatam Arrays.asList (new_string) sabit bir liste veriyor, düzelteceğim. –