当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Java SortedSet subSet()用法及代码示例


Java中SortedSet接口的subSet()方法用于返回此集合部分的视图,其元素范围从fromElement(包括)到toElement(不包括)。

  • 此方法返回的集合由该集合支持,因此返回集合中的更改会反映在该集合中,反之亦然。
  • 此方法返回的set支持此set支持的所有可选set操作。

注意:如果试图插入超出其范围的元素,则此方法返回的集合将引发IllegalArgumentException。

用法


SortedSet subSet(E fromElement,
                    E toElement)

其中,E是此Set维护的元素的类型。

参数:此函数接受两个参数fromElement和toElement,它们代表返回集的低端点(包括端点)和高端点(不包括端点)。

返回值:返回在fromElement和toElement之间作为参数传递的元素。

异常

  • ClassCastException:如果fromElement与该集合的比较器不兼容(或者,如果集合没有比较器,则fromElement不实现Comparable),则抛出ClassCastException。
  • NullPointerException :如果参数fromElement为null,则抛出NullPointerException。
  • IllegalArgumentException:它引发一个IllegalArgumentException,此集合本身具有限制范围,并且参数fromElement位于范围的范围之外。

以下示例程序旨在说明上述方法:

程序1

// A Java program to demonstrate 
// working of SortedSet 
import java.util.SortedSet; 
import java.util.TreeSet; 
  
public class Main { 
    public static void main(String[] args) 
    { 
        // Create a TreeSet and inserting elements 
        SortedSet<Integer> s = new TreeSet<>(); 
  
        // Adding Element to SortedSet 
        s.add(1); 
        s.add(5); 
        s.add(2); 
        s.add(3); 
        s.add(9); 
  
        // Returning the set with elements 
        // ranging between the passed value 
        System.out.print("Elements range between 2 and 9 in set are : "
                         + s.subSet(2, 9)); 
    } 
}
输出:
Elements range between 2 and 9 in set are : [2, 3, 5]

程序2

// A Java program to demonstrate 
// working of SortedSet 
import java.util.SortedSet; 
import java.util.TreeSet; 
  
public class Main { 
    public static void main(String[] args) 
    { 
        // Create a TreeSet and inserting elements 
        SortedSet<String> s = new TreeSet<>(); 
  
        // Adding Element to SortedSet 
        s.add("Geeks"); 
        s.add("For"); 
        s.add("Geeks"); 
        s.add("Code"); 
        s.add("It"); 
  
        // Returning the set with elements 
        // ranging between the passed value 
        System.out.print("Elements between C and G in set is : "
                         + s.subSet("C", "G")); 
    } 
}
输出:
Elements between C and G in set is : [Code, For]

参考: https://docs.oracle.com/javase/10/docs/api/java/util/SortedSet.html#subSet(E)



相关用法


注:本文由纯净天空筛选整理自barykrg大神的英文原创作品 SortedSet subSet() method in Java。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。