我在编译如下信息的时候出现两个这样的警告是什么意思。应该怎么改。另外怎么输出里面的姓名和分数C:\Documents and Settings\zhongzi>javac Test.java -Xlint:unchecked
Test.java:11: 警告:[unchecked] 对作为普通类型 java.util.HashMap 的成员的 put(K
V) 的调用未经检查
          objH.put("张三",Integer.valueOf(90));
                  ^
Test.java:13: 警告:[unchecked] 对作为普通类型 java.util.HashMap 的成员的 put(K
V) 的调用未经检查
          objH.put("李四",new Integer(88));
                  ^
2 警告import java.util.HashMap;
class Show
{
     HashMap objH;
     Show()
     {
          objH=new HashMap();
     }
     void getMessage()
     {
          objH.put("张三",new Integer(90));
        
          objH.put("李四",new Integer(88));
     }
   
}

解决方案 »

  1.   

    因为你的hashMap没指定泛型。所以出错。
    HashMap<String,Interger> objH;应该就ok了
      

  2.   

    这是1.5以后有的范型操作,这样写就可以了,不会有警告了.import java.util.HashMap; 
    class Show 

         HashMap<String,Integer> objH; 
         Show() 
         { 
              objH=new HashMap<String,Integer>(); 
         } 
         void getMessage() 
         { 
              objH.put("张三",new Integer(90)); 
             
              objH.put("李四",new Integer(88)); 
         } 
        
    }