objectiddictionary.java

来自「xstream是一个把java object序列化成xml文件的开源库,轻便好用」· Java 代码 · 共 53 行

JAVA
53
字号
package com.thoughtworks.xstream.core.util;import java.util.HashMap;import java.util.Map;/** * Store IDs against given object references. * <p/> * Behaves the same way as java.util.IdentityHashMap, but in JDK1.3 as well. */public class ObjectIdDictionary {    private Map map = new HashMap();    private static class IdWrapper {        private final Object obj;        public IdWrapper(Object obj) {            this.obj = obj;        }        public int hashCode() {            return System.identityHashCode(obj);        }        public boolean equals(Object other) {            return obj == ((IdWrapper)other).obj;        }        public String toString() {            return obj.toString();        }    }    public void associateId(Object obj, Object id) {        map.put(new IdWrapper(obj), id);    }    public Object lookupId(Object obj) {        return map.get(new IdWrapper(obj));    }    public boolean containsId(Object item) {        return map.containsKey(new IdWrapper(item));    }    public void removeId(Object item) {        map.remove(new IdWrapper(item));    }}

⌨️ 快捷键说明

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