Data クラスには price (double)、operator (string) の 2 つのフィールドが含まれています。以下に示すマップの各キーに Data クラスを複数の値としてマッピングしました。
コードに表示できません 2)。同じキーの下にマップされたすべての値
たとえば、キー = 1 の場合、マップには価格 {0.2,0.3,0.4} 、演算子: {A,B,C} の値があります。
このコードの出力には、price= 0.2、Operator: A for Key 1 のみが表示されます。他のすべての値は表示されません。それを解決する方法は?
1) Map<Integer, ArrayList<Data>> mp = new HashMap<Integer, ArrayList <SortData>>();
2)
ArrayList<Data> ls = mp.get (keys.get(k));
int i=0;
for ( Data e: ls)
{
System.out.println(e.getOperator() + e.getPrice());
i++;
}
マップにデータを追加するコード:
enter code here
ArrayList<Test> list = new ArrayList<Test>();
Map<Integer,ArrayList<Test>> mp = new HashMap<Integer,ArrayList<Test>>();
list.add(new Data(0,1,"A"));
list.add(new Data(0,2,"B"));
mp.put(1,list);
List<Test> value = mp.get(1);
value.add(0.3,"c");
value.add(0,5,"E");