HashMap学习


Java HashMap学习:

  • HashMap定义:

    • hashMap是一个散列表,它存储的内容是键值对映射;

    • hashMap实现了Map接口,根据键的HashCode值存储数据,具有很快的访问速度;最多允许一条记录的键为null,不支持线程同步;

    • HashMap是无序的,即不会记录插入的顺序;

    • HashMap继承于AbstractMap,实现了Map, Cloneable , java.io.Serializable接口;

    • HashMap的key与value类型可以相同,也可以不同,可以是字符串类型,也可以是整数-字符串;

 

  • HashMap语法:

    //语法
    ?
    HashMap<Integer,String> site=new HashMap<Integer,String>();
    ?

 

  • hashMap类的常用方法:

    • 添加元素:put();

      //
      public class ListDemo06 {
         public static void main(String[] args) {
      ?
             HashMap<Integer,String> site=new HashMap<>();
             site.put(1,"Google");
             site.put(2,"baidu");
             site.put(3,"haha");
      ?
             System.out.println(site);//{1=Google, 2=baidu, 3=haha}
      ?
        }
      }
      ?
    • 访问元素:get(key);

      public class ListDemo06 {
         public static void main(String[] args) {
      ?
             HashMap<Integer,String> site=new HashMap<>();
             site.put(1,"Google");
             site.put(2,"baidu");
             site.put(3,"haha");
      ?
             //获取元素
             String s=site.get(1);
             System.out.println(s);//Google
      ?
        }
      }
      ?
    • 删除元素:remove(key);

      public class ListDemo06 {
         public static void main(String[] args) {
      ?
             HashMap<Integer,String> site=new HashMap<>();
             site.put(1,"Google");
             site.put(2,"baidu");
             site.put(3,"haha");
      ?
             //删除元素
             site.remove(1);
      ?
      ?
             System.out.println(site);//{2=baidu, 3=haha}
      ?
        }
      }
      ?
    • 计算大小:size()

      public class ListDemo06 {
         public static void main(String[] args) {
      ?
             HashMap<Integer,String> site=new HashMap<>();
             site.put(1,"Google");
             site.put(2,"baidu");
             site.put(3,"haha");
      ?
             System.out.println(site.size());//3
      ?
        }
      }
      ?
    • 迭代HashMap:for-each

      public class ListDemo06 {
         public static void main(String[] args) {
      ?
             HashMap<Integer,String> site=new HashMap<>();
             site.put(1,"Google");
             site.put(2,"baidu");
             site.put(3,"haha");
      ?
             //迭代
             for (int i =1;i<=site.size();i++) {
                 System.out.print(site.get(i));//Googlebaiduhaha
            }
      ?
        }
      }
      ?