Java 程序获取大于或小于指定值的 TreeMap 键、值或条目

javaobject oriented programmingprogramming更新于 2024/8/5 17:44:00

TreeMap 是 Java 提供的一个类,它实现了 Map 接口。它是键值对的集合,TreeMap 中的键值对按基于键值的排序顺序存储。Entry 定义为 TreeMap 中的键值对。在本文中,我们将详细介绍如何获取大于或小于指定值的 TreeMap 键值对或条目。

现在,我们将研究本文中使用的 TreeMap 的一些内置方法及其功能。

使用的方法

higherKey() − 此方法用于返回大于给定键的最小键(如果存在),否则将返回 null。

mapObject.higherKey(Object key)

higherEntry() − 此方法返回一个键值对,其最小键严格大于给定键(如果存在),否则将返回 null。

mapObject.higherEntry(Object key)

lowerKey() − 此方法用于返回严格小于给定键的最大键,否则将返回 null。

mapObject.lowerKey(Object key)

lowerEntry() − 此方法返回一个键值对,其最大键严格小于给定键,否则将返回 null。

mapObject.lowerEntry(Object key)

ceilingEntry() − 此方法返回一个键值对,其最小键大于或等于给定键,否则将返回 null。

mapObject.ceilingEntry(Object key)

floorEntry() − 此方法返回一个键值对,其大键小于或等于给定的键,否则将返回 null。

mapObject.floorEntry(Object key)

get( − 此方法用于获取与 key 关联的值,否则将返回 null。

mapObject.get(Object key)

put () − 此方法用于将键值对添加到 TreeMap。它接受一个键和一个值作为参数。

mapObject.get(Object key, Object value)

现在,我们详细讨论使用 Java 中的不同方法通过不同示例查找大于或小于指定值的树形图键、值或条目。

方法 1:使用higherKey()、lowerKey()、higherEntry() 和 lowerEntry()

  • 创建一个 TreeMap 对象并使用 put() 方法添加键和值。

  • 使用 higherKey() 和 higherEntry() 打印大于给定键的最小键、值和条目。

  • 使用 lowerKey() 和 lowerEntry() 打印小于给定键的最大键、值和条目。

示例

在此示例中,我们将使用 java 提供的不同内置方法 higherKey()、lowerKey()、higherEntry() 和 lowerEntry() 来获取大于或小于指定值的键、值或条目。

import java.util.*;
public class Main {
   public static void main(String[] args) {
      TreeMap<Integer, String> treeMap = new TreeMap<>();
      treeMap.put(1, "A");
      treeMap.put(2, "B");
      treeMap.put(3, "C");
      treeMap.put(4, "D");
      System.out.println("Key greater than 3: " + treeMap.higherKey(3));
      System.out.println("Value greater than 3: " + treeMap.get(treeMap.higherKey(3)));
      System.out.println("Entry greater than 3: " + treeMap.higherEntry(3));
      System.out.println("Key less than 3: " + treeMap.lowerKey(3));
      System.out.println("Value less than 3: " + treeMap.get(treeMap.lowerKey(3)));
      System.out.println("Entry less than 3: " + treeMap.lowerEntry(3));
   }
}

输出

Key greater than 3: 4
Value greater than 3: D
Entry greater than 3: 4=D
Key less than 3: 2
Value less than 3: B
Entry less than 3: 2=B

方法 2:使用 ceilingEntry() 和 floorEntry()

  • 使用 put() 方法创建一个 TreeMap 对象并添加键和值。

  • 使用 higherKey() 和 ceilingEntry() 打印大于给定键的最小键、值和条目

  • 使用 lowerKey() 和 floorEntry() 打印小于给定键的最大键、值和条目

示例

在此示例中,我们将使用 java 提供的不同内置方法 ceilingEntry() 和 floorEntry() 来获取大于或小于指定值的键、值或条目。

import java.util.*;
public class Main {
   public static void main(String[] args) {
      TreeMap<Integer, String> treeMap = new TreeMap<>();
      treeMap.put(1, "A");
      treeMap.put(3, "C");
      treeMap.put(4, "D");
      System.out.println("Key greater than 3: " + treeMap.higherKey(3));
      System.out.println("Value greater than 3: " + treeMap.get(treeMap.higherKey(3)));
      System.out.println("Key less than 3: " + treeMap.lowerKey(3));
      System.out.println("Value less than 3: " + treeMap.get(treeMap.lowerKey(3)));
      System.out.println("Entry greater than  2: " + treeMap.ceilingEntry(2));
      System.out.println("Entry less than  2: " + treeMap.floorEntry(2));
   }
}

输出

Key greater than 3: 4
Value greater than 3: D
Key less than 3: 1
Value less than 3: A
Entry greater than  2: 3=C
Entry less than  2: 1=A

因此,在本文中,我们讨论了查找 TreeMap 键、值或大于或小于指定值的条目的不同方法。


相关文章