从LinkedList 中取对象的问题??
class person{
private static int id = 0;
private String name = null;
public person(String name){
++id;
this.name = name;
}
public int getId(){
return id;
}
public String getName(){
return name;
}
}
public class Linklisttest {
/**
* @param args
*/
public static void locat(int num){
}
public static void main(String[] args) {
// TODO Auto-generated method stub
LinkedList linklist = new LinkedList();
for(int i = 0;i <10;++i){
linklist.add(new person( "三年三班 "+i));
}
Iterator iterator = linklist.iterator();
while (iterator.hasNext()){
Xiaoprint.xprintln(((person)iterator.next()).getId());
}
}
}
注:Xiaoprint是我的工具类负责打印的
这道题的运行结果是
10
10
10
10
10
10
10
10
10
10
不清楚就在这里我的id已经是static类型,每建一个新对象应该递增才对,而这条语句Xiaoprint.xprintln(((person)iterator.next()).getName());就能得到我想要的结果
------解决方案--------------------static 每个类只有1个
一大堆对象共用一个。
------解决方案--------------------所有的object共有一个id所以当你getid时它就得到的最终id,如果你想把每object有一单独的id那么就的还有一非class变量然后在初始化时用class变量初始化