Java 中的 TreeSet subSet() 方法
java.util.TreeSet.subSet() 方法用于返回参数中指定范围内现有 TreeSet 的子集。该方法接受一个上界和一个下界,并返回范围内提及的所有元素。如果其他元素在集合中,则包括下限, 而上限除外。它基本上将子集大于等于下限且严格小于上限元素。
语法:
TreeSet tree_set.subSet(Object low_element, Object up_element)
参数:
- low_element: 这是 TreeSet 类型的定义下限或从中评估子集的起始元素。这个元素包括在子集中。
- up_element: 这是 TreeSet 类型的定义上限或评估子集的最后一个元素。该元素在子集之外。
返回值: 该方法返回参数给定范围内提到的 TreeSet 类型的子集。
下面的程序说明了 java.util.TreeSet.subSet() 方法:
程序 1 :
// Java 代码以说明 subSet() 方法
import java.io.*;
import java.util.Iterator;
import java.util.TreeSet;
public class Tree_Set_Demo {
public static void main(String[] args)
{
// 创建一个空的 TreeSet
TreeSet<Integer> tree_set = new TreeSet<Integer>();
// 使用 add() 添加元素
tree_set.add(5);
tree_set.add(1);
tree_set.add(50);
tree_set.add(10);
tree_set.add(20);
tree_set.add(6);
tree_set.add(20);
tree_set.add(18);
tree_set.add(9);
tree_set.add(30);
// 创建子树
TreeSet<Integer> sub_set = new TreeSet<Integer>();
// 将值限制为 5
sub_set = (TreeSet<Integer>)tree_set.subSet(6, 30);
// 创建一个迭代器
Iterator iterate;
iterate = sub_set.iterator();
// 显示树集数据
System.out.println("子集中的结果值:");
// 遍历子集
while (iterate.hasNext()) {
System.out.println(iterate.next() + " ");
}
}
}
子集中的结果值:
6
9
10
18
20
程序 2 :
// 以下是Java代码,用于说明TreeSet类中subSet()方法如何处理String类型的元素。
import java.io.*;
import java.util.Iterator;
import java.util.TreeSet;
public class Tree_Set_Demo {
public static void main(String[] args)
{
// 创建一个空的TreeSet
TreeSet<String> tree_set = new TreeSet<String>();
// 使用add()方法添加元素
tree_set.add("Welcome");
tree_set.add("To");
tree_set.add("Geek");
tree_set.add("4");
tree_set.add("Geeks");
tree_set.add("TreeSet");
// 创建子集TreeSet
TreeSet<String> sub_set = new TreeSet<String>();
// 限制元素值在"4"和"TreeSet"之间
sub_set = (TreeSet<String>)tree_set.subSet("4", "TreeSet");
// 创建一个迭代器
Iterator iterate;
iterate = sub_set.iterator();
// 显示TreeSet的数据
System.out.println("子集内元素值: ");
// 遍历子集
while (iterate.hasNext()) {
System.out.println(iterate.next() + " ");
}
}
}
子集内元素值:
4
Geek
Geeks
To
极客教程