| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 799 人关注过本帖
标题:[求助]Java的这个问题是怎么回事?
只看楼主 加入收藏
张行天下
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-9-15
收藏
 问题点数:0 回复次数:2 
[求助]Java的这个问题是怎么回事?

原程序如下:
import java.util.*;
class VectorTest
{
public static void main(String[] args )
{
int b=0;
System.out.println("please input a set of numbers:");
Vector v = new Vector();
while(true)
{
try{ b = System.in.read();}catch (Exception e){e.printStackTrace();}
if(b=='\r'||b=='\n')
break;
else
{
int num=b-'0';
v.addElement(new Integer(num));
}
}
int sum=0;
Enumeration e =v.elements();
while(e.hasMoreElements())
{
Integer intObj = (Integer)e.nextElement();
sum+=intObj.intValue();
}
System.out.println(sum);
}
}

编译会出现这个提示:


E:\mycode>javac VectorTest.java
注意: VectorTest.java 使用了未经检查或不安全的操作。
注意: 要了解详细信息,请使用 -Xlint:unchecked 重新编译。

E:\mycode>javac -Xlint VectorTest.java
VectorTest.java:17: 警告: [unchecked] 对作为普通类型 java.util.Vector 的成员的
addElement(E) 的调用未经检查
v.addElement(new Integer(num));
^
1 警告

请问这个是怎么回事??

搜索更多相关主题的帖子: Java Vector java System util 
2007-10-07 10:42
Lovedandan
Rank: 1
等 级:新手上路
威 望:1
帖 子:56
专家分:2
注 册:2007-5-17
收藏
得分:0 
回复:(张行天下)[求助]Java的这个问题是怎么回事?...

估计这是个范型的问题,当你在用Collections操作时,可以为其指定要装入的数据类型,当后面的程序试图装入不同的数据类型时,程序会报错
在你的程序中,
Vector<Integer> v = new Vector<Integer>();
......
Enumeration<Integer> e =v.elements();

这样后来遍历时就不用进行类型的转转了


永远,唯一,巴黎
2007-10-07 11:37
张行天下
Rank: 1
等 级:新手上路
帖 子:29
专家分:0
注 册:2007-9-15
收藏
得分:0 

Thank u.我的问题已经解决了。二楼Lovedandan的解释是正确的。
总结一下:
以后再用到这种集合类时,还是预先指定装载数据类型,以免出现不必要的错误的好。

再次感谢Lovedandan.

[此贴子已经被作者于2007-10-7 20:52:39编辑过]

2007-10-07 20:49
快速回复:[求助]Java的这个问题是怎么回事?
数据加载中...
 
   



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

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