语法错误,仅当源级别为5.0时已参数化的类型才可用,是什么意思? 下面是代码:
import java.util.*;
public class TestArgsWords{
private static final int ONE = 1;
public static void main(String args[]){
Map<String,Integer> m =new HashMap<String,Integer>();
for(int i =0;i<args.length;i++){
if(!m.containsKey(args[i])){
m.put(args[i],ONE);
}
else {int freq = m.get(args[i]);
m.put(args[i],freq+1);}

}
System.out.println(m.size()+"distinct words detected:");
System.out.println(m);
}
} 上面那段代码在命令行里运行是没有问题的.在eclipse运行就有问题,到底是什么问题真是搞不明白. 

解决方案 »

  1.   

    你的jdk是1.5或1.5一上的吗?泛型是1.5版本后支持的,1.5以前的jdk不支持泛型
      

  2.   

    你eclipse中的jdk不是1.5以上的所以就会报错,泛型要5以上才支持
      

  3.   

    如果你的jdk是1.5以上的,在eclipse选择版本支持时,选1.5就可以了.
      

  4.   

    如果你用的是jdk5.0或者以上的版本的话还是不能应用泛型。
    你可以在你的工程上右键打开属性然后选择java complier把complie level改成5.0就行了
      

  5.   

    把你eclipse使用的jre设置为1.5以上的就行了
    你现在用的肯定不是1.5以上的
      

  6.   

    在eclipse中
    window->preferences->Java->Compiler
    把jdk改成5.0或5.0以上
      

  7.   

    jdk的版本不对,得是5.0以后的