浏览 255 次
|
精华帖 (0) :: 良好帖 (0) :: 新手帖 (15) :: 隐藏帖 (0)
|
|
|---|---|
| 作者 | 正文 |
|
最后更新时间:2008-05-20 关键字: java基础
最近在学些tiger
写了个程序
public static void main(String[] args) {
List<Integer> list = new ArrayList<Integer>();
for (int i = 0; i <= 25; i++) {
int result = (int) (Math.random() * 100);
list.add(result);
}
for (int i = 0; i < list.size(); i++) {
if(list[i]>list[i+1]){
}
}
}
其中if(list[i]>list[i+1]总是报错 之前我在定义list的时候,有写<Integer>,第2个循环中,i虽然是int类型,但是tiger不是提供了自动包装器吗,可以将基本类型自动转换成对应的对象类型,但是我这里总是报错,不清楚原因。 声明:JavaEye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-20
if(list[i]>list[i+1]报错是因为List里面存储的是Integer类型,能这么比较吗
|
|
| 返回顶楼 | |
|
最后更新时间:2008-05-20
第一
list不是数组,不能用[i]。请用.get(i) 第二 i+1。。。会越界 第三 这种问题去入门版发 |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-20
aleigood 写道 if(list[i]>list[i+1]报错是因为List里面存储的是Integer类型,能这么比较吗
谢谢你,问题不是出在这,我自己秀逗了,list不是数组,所以不能用数组下表取值。应该用get方法取值就对了,除了list其余的Collection的数据结构好像都应该用迭代取值吧~不太确定 |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-20
DoubleEO 写道 aleigood 写道 if(list[i]>list[i+1]报错是因为List里面存储的是Integer类型,能这么比较吗
谢谢你,问题不是出在这,我自己秀逗了,list不是数组,所以不能用数组下表取值。应该用get方法取值就对了,除了list其余的Collection的数据结构好像都应该用迭代取值吧~不太确定 for (Integer i : list) {...} |
|
| 返回顶楼 | |
|
最后更新时间:2008-05-20
icefire 写道 DoubleEO 写道 aleigood 写道 if(list[i]>list[i+1]报错是因为List里面存储的是Integer类型,能这么比较吗
谢谢你,问题不是出在这,我自己秀逗了,list不是数组,所以不能用数组下表取值。应该用get方法取值就对了,除了list其余的Collection的数据结构好像都应该用迭代取值吧~不太确定 for (Integer i : list) {...} 不是除了list,是包括list在内的所有的Collection。。。。。 |
|
| 返回顶楼 | |




