新人求解JAVA问题

milyhj 2011-05-13 12:36:04
import java.util.*;
public class T33 {
public static void main(String[] args){
Scanner in=new Scanner(System.in);
Vector a=new Vector();
for(int j=1;j<=10;j++)
a.add(j);
int[] data=new int[a.size()];
int i=0;
for(Iterator it=a.iterator();it.hasNext();)
{
int da=Integer.parseInt((String)it.next());
data[i]=da;
i++;
}
for( i=0;i<data.length;i++)
System.out.print(data[i]+" ");
}
}
我想用Iterator遍历Vector中的对象,然后转换成int[]数组,以上的程序编译无错,运行报错在int da=Integer.parseInt((String)it.next());这句,请问是什么原因呢,本人java新手。。。
...全文
63 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
悠忧虫 2011-05-13
  • 打赏
  • 举报
回复
int da=Integer.parseInt((String)it.next());
改成
int da=(Integer)it.next();

Vector中存放的是Integer类型的数据,你强制转换成String当然报错了
malihom 2011-05-13
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 sunlotus0 的回复:]

int da=Integer.parseInt((String)it.next());
改成
int da=(Integer)it.next();

Vector中存放的是Integer类型的数据,你强制转换成String当然报错了
[/Quote]
正解。
LZ,为什么要把int的强制转换成string呢?然后又强制转换为int,搞不懂……

50,530

社区成员

发帖
与我相关
我的任务
社区描述
Java相关技术讨论
javaspring bootspring cloud 技术论坛(原bbs)
社区管理员
  • Java相关社区
  • 小虚竹
  • 谙忆
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧