import java.util.IdentityHashMap;
import java.util.Map;
/**
* IdentityHashMap与常用的HashMap的区别是:
* 前者比较key时是“引用相等”而后者是“对象相等”,即对于k1和k2,
* 当k1==k2时,IdentityHashMap认为两个key相等,
* 而HashMap只有在k1.equals(k2) == true 时才会认为两个key相等。
* @version 1.0
*/
public class IdentityHashMapTest {
/**
* 测试.
* @param args <br><br>
* remark <br>
*/
public static void main(String[] args) {
Map<String,String> map = new IdentityHashMap<String,String>();
map.put(new String("abc"), "123");
map.put(new String("abc"), "123");
System.out.println(map);
}
}
应用场景:
IdentityHashMap有其特殊用途,比如一键多值记录,序列化或者深度复制。或者记录对象代理。