有没人举个HashMap的例子..
有点不太懂 例子别太复杂 几个常用方法就行了..先谢谢了...

解决方案 »

  1.   

    方法摘要   
      void   clear()   
                        从此映射中移除所有映射关系。   
      Object   clone()   
                        返回此   HashMap   实例的浅表复制:并不克隆键和值本身。   
      boolean   containsKey(Object   key)   
                        如果此映射包含对于指定的键的映射关系,则返回   true。   
      boolean   containsValue(Object   value)   
                        如果此映射将一个或多个键映射到指定值,则返回   true。   
      Set <Map.Entry <K,V> >   entrySet()   
                        返回此映射所包含的映射关系的   collection   视图。   
      V   get(Object   key)   
                        返回指定键在此标识哈希映射中所映射的值,如果对于此键来说,映射不包含任何映射关系,则返回   null。   
      boolean   isEmpty()   
                        如果此映射不包含键-值映射关系,则返回   true。   
      Set <K>   keySet()   
                        返回此映射中所包含的键的   set   视图。   
      V   put(K   key,   V   value)   
                        在此映射中关联指定值与指定键。   
      void   putAll(Map <?   extends   K,?   extends   V>   m)   
                        将指定映射的所有映射关系复制到此映射中,这些映射关系将替换此映射目前针对指定映射的所有键的所有映射关系。   
      V   remove(Object   key)   
                        如果此映射中存在该键的映射关系,则将其删除。   
      int   size()   
                        返回此映射中的键-值映射关系数。   
      Collection <V>   values()   
                        返回此映射所包含的值的   collection   视图。   
    例: 
    import   java.util.*; class   hashmaptest 

          public   static   void   main(String[]   args) 
          { 
                HashMap     register   =   new   HashMap();           
                register.put("name","jingsp"); 
                register.put("date","1996-8"); 
                register.put("stuid","960515"); 
                register.put("status","overS"); 
                register.put("scrol","excellence"); 
                register.put("lasttime","1999-9"); 
                System.out.println(register); 
                System.out.println("-------------------"); 
                Set   s   =   register.   entrySet(); 
                System.out.println(s); 
                System.out.println("-------------------"); 
                Iterator   it   =   s.iterator(); 
                while(it.hasNext()) 
                { 
                          Map.Entry   map   =   (   Map.Entry)it.next(); 
                          System.out.print(map+"\t"); 
                          System.out.println("key:"+map.getKey()+"\tvalue:"+map.getValue()); 
                } 
          } 

      

  2.   

    其实没有什么难的。关键要理解hashmap的构成。hashmap(key,value)前面的一个是标签,就相当于张三,后面的是值,就相当于“98分”
    import java.util.*;
    public class hashmaptest {    public hashmaptest() {
        }
     public static void main (String[] args) {
     HashMap has=new HashMap();
     has.put("zhangsan","98");
     has.put("lisi","96");
     has.put("wangwu","90");
     System.out.println(has.clone());
    }
    }
    编译时会出现
    注意:E:\java练习\hashmaptest.java 使用了未经检查或不安全的操作。
    注意:要了解详细信息,请使用 -Xlint:unchecked 重新编译。
    不用管它,这只是因为jdk的版本问题
    直接运行就行运行结果如下,其他方法的使用要你自己看文档。(学会看文档,相信你会突飞猛进的)
    --------------------Configuration: <Default>--------------------
    {wangwu=90, lisi=96, zhangsan=98}Process completed.
      

  3.   

    一个常用法:
    Map<Integer,String> map=new HashMap<Integer,String>();
    ..
    for(int i=0;i<userList.size();i++){
    ..
    map.put(userId,userName);
    ..
    }需要用的时候,根据userId就可以获取userName了。
    String userName = map.get(userId);
    ..