我是新手,还不太会用java,从网上弄个程序,可是怎么调都调不出,代码贴出来,请高手帮忙看一下,错在哪里,应该怎么改?
package cluster.kmeans;
import java.util.Vector;
import java.util.Iterator;/**
 * Created by IntelliJ IDEA.
 * User: shyam.s
 * Date: Apr 18, 2004
 * Time: 4:26:06 PM
 */
public class PrgMain {
    public static void main(String args[]) {
        Vector dataPoints = new Vector();        dataPoints.add(new DataPoint(22, 21, "p53"));
        dataPoints.add(new DataPoint(3, 2, "maltase"));
        dataPoints.add(new DataPoint(19, 20, "bcl2"));
        dataPoints.add(new DataPoint(18, 22, "fas"));
        dataPoints.add(new DataPoint(1, 3, "amylase"));
        JCA jca = new JCA(2, 1000, dataPoints);
        jca.startAnalysis();        Vector[] v = jca.getClusterOutput();
        for (int i = 0; i < v.length; i++) {
            Vector tempV = v[i];
            System.out.println("-----------Cluster" + i + "---------");
            Iterator iter = tempV.iterator();
            while (iter.hasNext()) {
                DataPoint dpTemp = (DataPoint) iter.next();
                System.out.println(dpTemp.getObjName() + "[" + dpTemp.getX() +
                                   "," + dpTemp.getY() + "]");
            }
        }
    }
}
编译:D:\myjava\cluster\kmeans>javac -Xlint:unchecked *.java
警告:
Cluster.java:39: 警告:[unchecked] 对作为普通类型 java.util.Vector 的成员的 addE
lement(E) 的调用未经检查
        this.mDataPoints.addElement(dp);
                                   ^
PrgMain.java:17: 警告:[unchecked] 对作为普通类型 java.util.Vector 的成员的 add(
E) 的调用未经检查
        dataPoints.add(new DataPoint(22, 21, "p53"));
                      ^
PrgMain.java:18: 警告:[unchecked] 对作为普通类型 java.util.Vector 的成员的 add(
E) 的调用未经检查
        dataPoints.add(new DataPoint(3, 2, "maltase"));
                      ^
PrgMain.java:19: 警告:[unchecked] 对作为普通类型 java.util.Vector 的成员的 add(
E) 的调用未经检查
        dataPoints.add(new DataPoint(19, 20, "bcl2"));
                      ^
PrgMain.java:20: 警告:[unchecked] 对作为普通类型 java.util.Vector 的成员的 add(
E) 的调用未经检查
        dataPoints.add(new DataPoint(18, 22, "fas"));
                      ^
PrgMain.java:21: 警告:[unchecked] 对作为普通类型 java.util.Vector 的成员的 add(
E) 的调用未经检查
        dataPoints.add(new DataPoint(1, 3, "amylase"));
                      ^
6 警告

解决方案 »

  1.   

    没关系的,警告 可以 编译 并 执行的,泛型啊,add要检查是否是 要 放入的 类型
      

  2.   

    警告没关系的,jdk5引入了泛型,你要是想去掉警告,Vector<DataPoint> dataPoints = new Vector<DataPoint>();
     
      

  3.   

    这个很正常 LZ 不要害怕 Vector 使用泛型实现的 
    在用到泛型的很多地方 都会有警告 有时甚至为了 达到泛型的灵活性 
    连像这样的Vector<DataPoint> dataPoints = new Vector<DataPoint>();
    具体化一个泛型 都不用 虽然这样降低了 可读性 
    泛型嘛 为灵活而活