标题:[求助]关于一个题,说不明白是哪个方面的
只看楼主
袁小六
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2007-8-3
 问题点数:0 回复次数:5 
[求助]关于一个题,说不明白是哪个方面的

import java.util.*;

class Gerbil {
private static int gerbilNumber=1;

public Gerbil() {
gerbilNumber++;
}

public void hop(){
System.out.println(this.gerbilNumber +" gerbil is hoping");
}
}

public class GerbilTest {

public static void main(String[] args) {

ArrayList a=new ArrayList();

for(int i=0;i<10;i++){
a.add(new Gerbil());
}

for(int i=0;i<10;i++){
((Gerbil)a.get(i)).hop();
}

}

}

输出结果竟然是
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
11 gerbil is hoping
我打算输出的是 1 2 3 4 5 6 7 8 9 10 啊怎么是11
而且在eclips中这两个类必须在两个文件中然后((Gerbil)a.get(i)).hop();报错,说Gerbil无法识别 期待帮助

搜索更多相关主题的帖子: private public hoping import 
2007-08-15 17:46
huwangvs
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:764
专家分:0
注 册:2007-2-4
得分:0 
a.add(new Gerbil());
你先创建了10个实例,gerbilNumber不就变成11了吗???
然后你再取出来10次,gerbilNumber是个类变量,就是取了10次11嘛!
2007-08-15 18:26
J华
Rank: 1
等 级:新手上路
帖 子:50
专家分:0
注 册:2007-7-2
得分:0 

楼上的大哥说的对..如果要得到你想的  

按你写的思路:

class Gerbil {
private static int addgerbil=1;
private int gerbilNumber=addgerbil;
public Gerbil() {
addgerbil++;
}

public void hop(){
System.out.println(this.gerbilNumber +" gerbil is hoping");
}
}
最好是重载构造撒.对象嘛....

2007-08-15 19:42
袁小六
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2007-8-3
得分:0 

恩 对的 谢谢~~~~~~~~~~~那还有我那个eclipse的问题那 谁会啊?


這個丗堺還钚夠瘋誑~~~
2007-08-15 21:14
huwangvs
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:34
帖 子:764
专家分:0
注 册:2007-2-4
得分:0 

那不是eclipse的问题,到哪都一样
我用的jdk1.5,集合类是泛型的,之前的好像是接受Object类型的。所以取取出来的时候也是Object型的,你现在要 调用Gerbil里的方法,肯定要强制转成Gerbil型的。
如果用泛型的话,直接用ArrayList<Gerbil>就可以了,不用再转换了。

2007-08-16 08:19
袁小六
Rank: 1
等 级:新手上路
帖 子:85
专家分:0
注 册:2007-8-3
得分:0 
啊!现在用eclipse好像必须用泛型了,不能用强制转换了,我用范型上述问题解决了,3Q

此问题已解决,可以结贴了

這個丗堺還钚夠瘋誑~~~
2007-08-16 10:05



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-162954-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.025507 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved