今天编译一东东提示:
E:\java>javac Test.java
注意:Test.java 使用了未经检查或不安全的操作。
注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。
这个是什么东西啊!
代码:
import java.util.*;public class Test {
public static void main(String[] args){
ArrayList arr = new Test().getRandom(50);
Iterator it = arr.iterator();
while(it.hasNext()){
System.out.println(it.next());
}
}
public ArrayList getRandom(int num){
ArrayList randomNum = new ArrayList();
Random random = new Random();
int temp = 0;
for (int i = 0;i < num; i ++){
temp = random.nextInt(num);
int nums = temp + 1;
if (randomNum.indexOf(new Integer(nums)) == -1){
randomNum.add(new Integer(nums));
}else{
i -- ;
}
}
return randomNum;
}
}

解决方案 »

  1.   

    ArrayList randomNum = new ArrayList();
     ||
     ||
     \/
    ArrayList<Integer> randomNum = new ArrayList<Integer>();
      

  2.   

    javac  -Xlint:unchecked  Test.java
      

  3.   

    是因为java 自 5.0 加了genericshttp://java.sun.com/j2se/1.5.0/docs/guide/language/generics.html你可以用 ArrayList<Integer> randomNum = new ArrayList<Integer>(),当然也可以不管他,这只是一个warning,不是error,所以还是会被编译的。