package collectionApi;
import java.util.Comparator;
import java.util.Map.Entry;
import java.util.NavigableMap;
import java.util.NavigableSet;
import java.util.Set;
import java.util.SortedMap;
import java.util.TreeMap;
import java.util.function.BiConsumer;
public class TreeMapApi {
public static void main(String[] args) {
TreeMap<String, String> treeMap = new TreeMap<>(); // 自然升序
treeMap.put("E", "e");
treeMap.put("A", "a");
treeMap.put("F", "f");
treeMap.put("G", "g");
treeMap.put("B", "b");
System.out.println(treeMap); //{A=a, B=b, E=e, F=f, G=g}
Comparable<String> comparable = new Comparable<String>() {
@Override
public int compareTo(String o) {
return -1;
}
};
TreeMap<String, String> treeMap2 = new TreeMap<String, String>(new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
return 1;
}
}); // 插入序
treeMap2.put("E", "e");
treeMap2.put("A", "a");
treeMap2.put("F", "f");
treeMap2.put("G", "g");
treeMap2.put("B", "b");
System.out.println(treeMap2); //{E=e, A=a, F=f, G=g, B=b}
treeMap.size();
boolean b = treeMap.containsKey("E");
System.out.println(b);
b = treeMap.containsValue("E"); // false
treeMap.get("E");
treeMap.comparator();
treeMap.firstEntry();
treeMap.firstKey();
treeMap.lastKey();
treeMap.lastEntry();
treeMap.putAll(treeMap2);
treeMap.put("K", "k");
//treeMap.remove("E");
//treeMap.clear();
NavigableMap<String, String> navigableMap;
SortedMap<String, String> sortedMap;
String key;
Entry<String, String> entry;
treeMap.clone();
entry = treeMap.pollFirstEntry(); // 删除first
entry = treeMap.pollLastEntry(); // 删除last
entry = treeMap.higherEntry("E"); // Key > E
key = treeMap.higherKey("E"); // Key > E
entry = treeMap.lowerEntry("E"); // Key < E
key = treeMap.lowerKey("E"); // Key < E
sortedMap = treeMap.headMap("E"); // Key < E
navigableMap = treeMap.headMap("E", true); // Key < E
sortedMap = treeMap.tailMap("E"); // Key >= E
navigableMap = treeMap.tailMap("E", true); // Key > E
entry = treeMap.floorEntry("E"); // key <= E
key = treeMap.floorKey("E"); // Key <=E
entry = treeMap.ceilingEntry("E"); // Key >= E
key = treeMap.ceilingKey("E"); // Key >= E
sortedMap = treeMap.subMap("E", "G"); // Key >= E && key < G
navigableMap = treeMap.subMap("B", true, "G", false); //Key>=B Key <G
treeMap.values(); // Collection<V>
treeMap.keySet(); // Set<K>
NavigableSet<String> set = treeMap.navigableKeySet(); // KeySet
set = treeMap.descendingKeySet(); // 反序KeySet
Set<Entry<String, String>> entries = treeMap.entrySet();
System.out.println(treeMap);
navigableMap = treeMap.descendingMap(); // 返回到序treeMap;
System.out.println(navigableMap);
treeMap.replace("E", "e", "ee"); // 把key=E 的value 改为ee
treeMap.replace("E", "gg"); // 把key=E 的value 改为 gg
treeMap.forEach(new BiConsumer<String, String>() { // 遍历
@Override
public void accept(String t, String u) {
//System.out.println(t + ":" + u);
}
});
treeMap.forEach((t, u) -> {// 遍历
System.out.println(t + ":" + u);
});
}
}
TreeMap 详解
最新推荐文章于 2024-11-01 09:42:09 发布