1に2つのハッシュマップを結合する方法

BruceyBandit:

第三第三ハッシュマップに2つのハッシュマップを結合する方法はありますか?

例:

Hashmap 1 has  {key1, value1}, {key2, value2}, {key3, value3)
Hashmap 2 has  {key1, value1}, {key2, value2}
Hashmap 3 has  {key1, value1}, {key2, value2}, {key3, value3), {key1, value1}, {key2, value2}

以下の例のコードは次のとおりです。

Map<String, Object> body1 = new HashMap<>();
Map<String, Object> body2 = new HashMap<>();
Map<String, Object> body = new HashMap<>();

table.getTableRows().forEach(row -> {
    String value = row.getCell(VALUE);
    String field = row.getCell(FIELD);

    if (body1.containsKey(field)) {
        body2.put(field, value);
    } else {
        body1.put(field, value);
    }
});

//Append both hashmaps into one - body
アービンド・クマールのAvinash:

あなたが持つことができない、すなわち、あなたは同じキーを持つ一つの値だけを持つことができ{key1, value1}、2回以上。あなたが持つエントリを追加しますたびにkey1、それは古い値を置き換えますkey1

あなたは1つのコレクションにマップの両方を維持したい場合は、別のコレクションなどを使用する必要がありますList下記の使用デモですList

import java.util.List;
import java.util.Map;

public class Main {
    public static void main(String args[]) {
        Map<String, Object> body1=Map.of("key1","value1","key2","value2","key3","value3");
        Map<String, Object> body2=Map.of("key1","value1","key2","value2");
        List<Map<String, Object>> body=List.of(body1,body2);
        for(Map<String, Object> map:body) {
            System.out.println(map);
        }
    }
}

出力:

{key1=value1, key2=value2, key3=value3}
{key2=value2, key1=value1}

おすすめ

転載: http://43.154.161.224:23101/article/api/json?id=339276&siteId=1