📅  最后修改于: 2023-12-03 14:51:46.966000             🧑  作者: Mango
Java TreeMap 使得键值按照一定的顺序排序,可以按照添加顺序或根据自定义 Comparator 排序。如果你想要删除 TreeMap 中的第一个条目或最后一个条目,有以下两种方法:
可以使用 TreeMap 类的 firstKey() 和 lastKey() 方法,获取 TreeMap 中第一个和最后一个 key。然后,使用 TreeMap 的 remove() 方法从 TreeMap 中删除该 key 对应的 entry。
import java.util.TreeMap;
public class Example {
public static void main(String[] args) {
// 新建 TreeMap
TreeMap<String, Integer> treeMap = new TreeMap<>();
// 添加元素
treeMap.put("a", 1);
treeMap.put("b", 2);
treeMap.put("c", 3);
treeMap.put("d", 4);
treeMap.put("e", 5);
// 删除第一个条目
treeMap.remove(treeMap.firstKey());
// 删除最后一个条目
treeMap.remove(treeMap.lastKey());
}
}
可以使用 TreeMap 类的 pollFirstEntry() 和 pollLastEntry() 方法,获取 TreeMap 中第一个和最后一个 entry,然后将该 entry 从 TreeMap 中删除。
import java.util.TreeMap;
import java.util.Map;
public class Example {
public static void main(String[] args) {
// 新建 TreeMap
TreeMap<String, Integer> treeMap = new TreeMap<>();
// 添加元素
treeMap.put("a", 1);
treeMap.put("b", 2);
treeMap.put("c", 3);
treeMap.put("d", 4);
treeMap.put("e", 5);
// 删除第一个条目
Map.Entry<String, Integer> firstEntry = treeMap.pollFirstEntry();
// 删除最后一个条目
Map.Entry<String, Integer> lastEntry = treeMap.pollLastEntry();
}
}
以上就是从 Java TreeMap 中删除第一个条目或最后一个条目的两种方法。需要注意的是,删除操作会改变 TreeMap 的大小,可能会影响 TreeMap 的其它操作。