TreeMap 允许空键
TreeMap allowing null key
我正在搜索允许一个 null
键的 TreeMap
。我需要的是一个排序的 Map<Long,String>
,我可以在其中插入一个代表默认值的 null
键:如果映射不包含指定的键,则与 null
键关联的值将是用过。
我已经搜索这张地图很长时间了,但我只找到 TreeMap
,它不允许 null
键。
Java 是否有任何允许一个 null
键的排序地图?
您或许可以自己编写。像这样的东西可能需要一些修补。
static class MapWithDefault<K, V> extends TreeMap<K, V> {
private V dflt;
@Override
public V get(Object key) {
V v = super.get(key);
return v == null ? dflt : v;
}
@Override
public V put(K key, V value) {
if (key == null) {
V was = dflt;
dflt = value;
return was;
}
return super.put(key, value);
}
public void setDflt(V dflt) {
this.dflt = dflt;
}
}
我正在搜索允许一个 null
键的 TreeMap
。我需要的是一个排序的 Map<Long,String>
,我可以在其中插入一个代表默认值的 null
键:如果映射不包含指定的键,则与 null
键关联的值将是用过。
我已经搜索这张地图很长时间了,但我只找到 TreeMap
,它不允许 null
键。
Java 是否有任何允许一个 null
键的排序地图?
您或许可以自己编写。像这样的东西可能需要一些修补。
static class MapWithDefault<K, V> extends TreeMap<K, V> {
private V dflt;
@Override
public V get(Object key) {
V v = super.get(key);
return v == null ? dflt : v;
}
@Override
public V put(K key, V value) {
if (key == null) {
V was = dflt;
dflt = value;
return was;
}
return super.put(key, value);
}
public void setDflt(V dflt) {
this.dflt = dflt;
}
}