我正在添加/编辑作为哈希图中值的对象——具有不同的键。
但是,在 hashmap 中编辑一个对象似乎会全部编辑它们(?)
我在这里做错了什么?
首先,我的(名字不好的)hashmap 类:
import java.util.HashMap;
public class hashmap {
static HashMap<Integer, exObj> hm;
hashmap(){
hm = new HashMap<Integer, exObj>();
}
public void createVal(){
for (int i = 0; i<10; i++){
hm.put(i, new exObj(i));
}
hm.get(2).setValue();
}
public void printVal(){
for (int i = 0; i<10; i++){
System.out.println(hm.get(i).getValue());
}
}
public static void main(String args[]){
hashmap hmap = new hashmap();
hmap.createVal();
hmap.printVal();
}
}
其次,我的简单 exObj 类:
public class exObj {
private static int value;
exObj(int i){
value = i;
}
public void setValue(){
value = value + 1;
}
public int getValue(){
return value;
}
}
返回输出:
10
10
10
10
10
10
10
10
10
10