Java SortedMap 接口

SortedMap 是一个保证元素排序的 Map。在本教程中,我们将了解 Java SortedMap 接口及其方法。

在本教程中,我们将了解 Java SortedMap 接口及其方法。

SortedMap 是一个保证元素排序的 Map。 SortedMap 接口扩展了 Map 接口 接口,像 Map 一样,按照键值对存储数据。

SortedMap 的实现

SortedMap 是一个接口,Java 集合框架中提供了 TreeMap 作为 SortedMap 接口的实现类。

TreeMap 类实现了 SortedMap 接口

如何使用 SortedMap?

我们先导入 java.util.SortedMap 类和实现类 java.util.TreeMap,然后通过 TreeMap 创建对象:

SortedMap<Key, Value> numbers = new TreeMap<>();

我们使用 TreeMap 类创建了一个名为 numbersSortedMap

这里,

  • Key - SortedMap 中键的数据类型
  • Value - SortedMap 中值的数据类型

这里我们创建 TreeMap 的时候没有使用任何比较器,因此元素将自然排序。

SortedMap 的方法

SortedMap 继承了 Map 接口的所有方法,SortedMap 还提供了以下方法:

  • comparator() - 返回一个比较器,可用于对 SortedMap 中的键进行排序
  • firstKey() - 返回 SortedMap 的第一个键
  • lastKey() - 返回 SortedMap 的最后一个键
  • headMap(key) - 返回 SortedMap 中键值小于指定键值所有条目
  • tailMap(key) - 返回 SortedMap 中键值大于或等于指定键值所有条目
  • subMap(key1, key2) - 返回 SortedMap 中键值位于 key1 (不包含) 和 key2 (包含) 之间的所有条目

SortedMap 示例

import java.util.SortedMap;
import java.util.TreeMap;

public class Main {
  public static void main(String[] args) {
    SortedMap<String, Integer> numbers = new TreeMap<>();

    // 插入元素
    numbers.put("Two", 2);
    numbers.put("One", 1);
    System.out.println("SortedMap: " + numbers);

    // 访问第一个键值
    System.out.println("First Key: " + numbers.firstKey());

    // 访问最后一个键值
    System.out.println("Last Key: " + numbers.lastKey());

    // 删除元素
    int value = numbers.remove("One");
    System.out.println("Removed Value: " + value);
  }
}

输出

SortedMap: {One=1, Two=2}
First Key: One
Last Key: Two
Removed Value: 1

在这里,我们展示了 SortedMap 接口的使用方法。如果您想了解有关 TreeMap 更多信息,请访问Java TreeMap