在java中,如何将映射对象添加到非静态的列表对象
我对这段代码有问题,当我将映射对象添加到列表中时,以前添加的所有对象都将被更改。如何将映射声明为非静态在java中,如何将映射对象添加到非静态的列表对象,java,list,map,non-static,Java,List,Map,Non Static,我对这段代码有问题,当我将映射对象添加到列表中时,以前添加的所有对象都将被更改。如何将映射声明为非静态 for(Statment){ map.put(Key,value), } result.add(map); 向容器添加内容时,如果要添加副本(因此,如果可以更改原始内容,并且添加到列表中的副本不会更改),则必须显式复制该引用(而不是它引用的对象的副本) e、 g Map Map=newlinkedhashmap(); 对于(
for(Statment){
map.put(Key,value),
}
result.add(map);
向容器添加内容时,如果要添加副本(因此,如果可以更改原始内容,并且添加到列表中的副本不会更改),则必须显式复制该引用(而不是它引用的对象的副本) e、 g
Map Map=newlinkedhashmap();
对于(int i=0;i您必须在for
之外声明每个对象,否则您只添加一个引用,任何修改都会修改所有引用。试试这个
for (condition) {
if (!map.containskey(key)) {
map.put(key,value);
}
}
result.add(map);
你确定这是Java吗?:p你说的“非静态”是什么意思?请在问题中添加细节。尽管这个问题没有多大意义,但这很可能是他的意思。
for (condition) {
if (!map.containskey(key)) {
map.put(key,value);
}
}
result.add(map);