ハッシュマップを考えてみましょう
Map<Integer, List> id1 = new HashMap<Integer,List>();
両方のハッシュマップにいくつかの値を挿入しました。
例えば、
List<String> list1 = new ArrayList<String>();
list1.add("r1");
list1.add("r4");
List<String> list2 = new ArrayList<String>();
list2.add("r2");
list2.add("r5");
List<String> list3 = new ArrayList<String>();
list3.add("r3");
list3.add("r6");
id1.put(1,list1);
id1.put(2,list2);
id1.put(3,list3);
id1.put(10,list2);
id1.put(15,list3);
Q1) ハッシュマップのキーにフィルタ条件を適用し、対応する値(リスト)を取得したい。
例: ここで私のクエリは key=1 で、出力は 'list1' である必要があります
私が書いた
id1.entrySet().stream().filter( e -> e.getKey() == 1);
しかし、このストリーム操作の出力としてリストとして取得する方法がわかりません。
Q2) 再度、ハッシュマップのキーにフィルター条件を適用し、対応するリストのリストを取得したいと考えています。
例: ここで、私のクエリは key=1% (つまり、キーは 1,10,15 のいずれか) で、出力は 'list1','list2','list3'(リストのリスト) になります。