繼續概述Map實現類
RenderingHints
SimpleBindings
TabularDataSupport
TreeMap
UIDefaults
WeakHashMap
Provider
RenderingHints
SimpleBindings
標籤:非線程安全 Hashmap private void checkKey(Object key) {
if (key == null) {
throw new NullPointerException("key can not be null");
}
if (!(key instanceof String)) {
throw new ClassCastException("key should be a String");
}
if (key.equals("")) {
throw new IllegalArgumentException("key can not be empty");
}
}
public void putAll(Map<? extends String, ? extends Object> toMerge) {
if (toMerge == null) {
throw new NullPointerException("toMerge map is null");
}
for (Map.Entry<? extends String, ? extends Object> entry : toMerge.entrySet()) {
String key = entry.getKey();
checkKey(key);
put(key, entry.getValue());
}
}
public Object put(String name, Object value) {
checkKey(name);
return map.put(name,value);
}
TabularDataSupport
標籤: 遠程調用 MBeanTreeMap
標籤:非線程安全 紅黑樹結構實現 public static void main(String[] args) throws OpenDataException {
TreeMap<Integer, Integer> tm = new TreeMap<>(new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1 < o2 ? 1 : ( o1 > 02 ? -1 : 0 );
}
});
tm.put(1, 10);
tm.put(2, 100);
tm.put(4, 10000);
tm.put(5, 100000);
tm.put(3, 1000);
tm.put(6, 1000000);
tm.forEach((k, v) -> System.out.println("k -> " + k + "~ v -> " + v));
}
public static void main(String[] args) throws OpenDataException {
TreeMap<String, Integer> tm = new TreeMap<>();
tm.put("A", 10);
tm.put("a", 100);
tm.put("在", 10000);
tm.put("6", 100000);
tm.put("*", 1000);
tm.put("f", 1000000);
tm.put("啊啊啊", 10000);
tm.forEach((k, v) -> System.out.println("k -> " + k + "~ v -> " + v));
}
k -> *~ v -> 1000
k -> 6~ v -> 100000
k -> A~ v -> 10
k -> a~ v -> 100
k -> f~ v -> 1000000
k -> 啊啊啊~ v -> 10000
k -> 在~ v -> 10000