⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 map.txt

📁 vyuhjjjjjjjjjj高层次公开vkvhbvvhl 更进口班轮会;老公公iulvgfyffyhknb
💻 TXT
字号:
类似数学中的函数 比如 y=f(x) 根据x就能确定y 的值 在map里就是 
map.put("x","y"); 
map.get("x") == y 
其实就是一一映射关系 

key------value 

每个key对应一个value 知道了key也就知道了value 


 演示java中Map容器的常用功能:

       import java.util.*;
     
         .............
        Map  person_message = new HashMap();
        person_message.put("sid","123");
        person_message.put("sname","lt");
        person_message.put("sphone","345");  
      
        //提取get(key)
           System.out.println(person_message.get("sphone"));        //  输出"345"
       //构建map集合中所有key对象的集合
           Set set = person_message.keySet();
           Iterator it = set.iterator();
           while(it.hasNext())
              System.out.print(it.next()+" ");                        //  输出"sid  sname  sphone"
       //构建map集合中所有values值的集合
           Collection coll = person_message.values();
            Iterator it = coll.iterator();
            while(it.hasNext())
                System.out.print(it.next()+" ");                       //  输出"123 lt  345"


1.声明一个map: Map map = new HashMap(); 
2.向map中放值,注意:map是key-value的形式存放的.如:

     map.put("sa","dd");

3.从map中取值:String str = map.get("sa").toString();结果是:str = "dd";

4.遍历一个map,从中取得key 和value

JDK1.5

Map   m   =   new   HashMap();   
  for   (Object   o   :   map.keySet())   {   
          map.get(o);   
  }

 

JDK1.4

Map   map   =   new   HashMap()   ;   
    
  Iterator   it   =   map.entrySet().iterator()   ;   
  while   (it.hasNext())   
  {   
  Map.Entry   entry   =   (Map.Entry)   it.next()   ;   
  Object   key   =   entry.getKey()   ;   
  Object   value   =   entry.getValue()   ;   
  } 


也就是说 Hashtable存储的每一个对象(称为值) 都需要有另外一个对象(称为关键字)来和他关联
作为关键字的类必须覆盖Object.hashCode()方法和Object.equals()方法。

HashMap与HashTable的比较:
一:历史原因,Hashtable是基于陈旧的Dictionary类的,HashMap是Java 1.2引进的Map接口的一个实现。
二:同步性,Hashtable是线程安全的,也就是说是同步的,而HashMap是线程序不安全的,不是同步的。
三:值,只有HashMap可以让你将空值作为一个表的条目的key或value。

Hashtable和HashMap的区别:
1.Hashtable是Dictionary的子类,HashMap是Map接口的一个实现类;
2.Hashtable中的方法是同步的,而HashMap中的方法在缺省情况下是非同步的。即是说,在多线程应用程序中,不用专门的操作就安全地可以使用Hashtable了;而对于HashMap,则需要额外的同步机制。但HashMap的同步问题可通过Collections的一个静态方法得到解决:
Map Collections.synchronizedMap(Map m)
这个方法返回一个同步的Map,这个Map封装了底层的HashMap的所有方法,使得底层的HashMap即使是在多线程的环境中也是安全的。
3.在HashMap中,null可以作为键,这样的键只有一个;可以有一个或多个键所对应的值为null。当get()方法返回null值时,即可以表示HashMap中没有该键,也可以表示该键所对应的值为null。因此,在HashMap中不能由get()方法来判断HashMap中是否存在某个键,而应该用containsKey()方法来判断。


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -