java中如何做可排序的map

import java.util.*;

public class CustomSortedMap implements SortedMap {

private final TreeMap treeMap;

public CustomSortedMap(Comparator comparator) {

this.treeMap = new TreeMap<>(comparator);

}

// Implementing all methods required by SortedMap interface

@Override

public Comparator comparator() {

return treeMap.comparator();

}

@Override

public SortedMap subMap(K fromKey, K toKey) {

return treeMap.subMap(fromKey, toKey);

}

@Override

public SortedMap headMap(K toKey) {

return treeMap.headMap(toKey);

}

@Override

public SortedMap tailMap(K fromKey) {

return treeMap.tailMap(fromKey);

}

@Override

public K firstKey() {

return treeMap.firstKey();

}

@Override

public K lastKey() {

return treeMap.lastKey();

}

@Override

public Set keySet() {

return treeMap.keySet();

}

@Override

public Collection values() {

return treeMap.values();

}

@Override

public Set> entrySet() {

return treeMap.entrySet();

}

@Override

public V put(K key, V value) {

return treeMap.put(key, value);

}

@Override

public V get(Object key) {

return treeMap.get(key);

}

@Override

public V remove(Object key) {

return treeMap.remove(key);

}

@Override

public void putAll(Map m) {

treeMap.putAll(m);

}

@Override

public void clear() {

treeMap.clear();

}

@Override

public int size() {

return treeMap.size();

}

@Override

public boolean isEmpty() {

return treeMap.isEmpty();

}

@Override

public boolean containsKey(Object key) {

return treeMap.containsKey(key);

}

@Override

public boolean containsValue(Object value) {

return treeMap.containsValue(value);

}

}

[an error occurred while processing the directive]