【发布时间】:2019-04-22 15:06:24
【问题描述】:
我有一个哈希图,它的值是一个数组。当我运行下面的代码时, tempAr[0] 和 tempAr[1] 的内容正确显示。但是,迭代器并不能准确地显示数组的元素。非常感谢您的帮助。
Map<String, double[]> m1 = new HashMap<String, double[]>();
double[] tempAr = new double[2];
String mykey;
for (int i = 0; i < 3; i++) {
for (int j = 0; j < 3; j++) {
mykey = "Key" + i + j;
tempAr[0] = i;
tempAr[1] = j;
System.out.println(" Now key is " + mykey + " and i is "
+ tempAr[0] + " j is " + tempAr[1]) ;
mz.put(mykey, tempAr);
}
}
Iterator<Entry<String, double[]>> it = mz.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, double[]> pair = (Map.Entry<String, double[]>) it.next();
System.out.println(pair.getKey() + " = "); // + pair.getValue());
double[] value = (double[]) pair.getValue();
for(double str : value) {
System.out.println(str + "\t");
}
}
你能帮忙吗?
【问题讨论】:
-
它显示了什么?你能详细说明你的期望和实际得到的吗?
-
为什么是嵌套循环?