Java NavigableSet headSet()方法
Java中NavigableSet接口的headSet()方法是用来返回这个集合中元素小于(或等于,如果包容为真)toElement的部分的视图。
- 返回的集合是由这个集合支持的,所以返回的集合的变化会反映在这个集合中,反之亦然。
- 返回的集合支持这个集合支持的所有可选的集合操作。
注意 :如果试图插入一个超出其范围的元素,返回的集合将抛出一个IllegalArgumentException。
语法:
NavigableSet<E> headSet(E toElement,
boolean inclusive)
其中,E是这个Set容器所维护的元素的类型。
参数 :这个函数有两个参数。
- toElement – 返回的集合的高端点
- inclusive- 如果高端点被包括在返回的视图中,则为true。
返回值 :它返回这个集合中元素小于(或等于,如果包容性为真)toElement的部分的视图。
下面的程序说明了Java中的headSet()方法。
程序1 :带有整数元素的NavigableSet。
// A Java program to demonstrate
// headSet() method of NavigableSet
import java.util.NavigableSet;
import java.util.TreeSet;
public class GFG {
public static void main(String[] args)
{
NavigableSet<Integer> ns = new TreeSet<>();
ns.add(0);
ns.add(1);
ns.add(2);
ns.add(3);
ns.add(4);
ns.add(5);
ns.add(6);
System.out.println("Map with key-value less than "+
"given argument : " + ns.headSet(6));
System.out.println("Map with key-value less than or" +
" equal to given argument : " + ns.headSet(6, true));
}
}
输出:
Map with key-value less than given argument : [0, 1, 2, 3, 4, 5]
Map with key-value less than or equal to given argument : [0, 1, 2, 3, 4, 5, 6]
程序2: 带有字符串元素的NavigableSet。
// A Java program to demonstrate
// headSet?() method of NavigableSet
import java.util.NavigableSet;
import java.util.TreeSet;
public class GFG {
public static void main(String[] args)
{
NavigableSet<String> ns = new TreeSet<>();
ns.add("A");
ns.add("B");
ns.add("C");
ns.add("D");
ns.add("E");
ns.add("F");
ns.add("G");
System.out.println("Map with key-value less than"+
" given argument : " + ns.headSet("F"));
System.out.println("Map with key-value less than "+
"or equal to given argument : " + ns.headSet("F"));
}
}
输出:
Map with key-value less than given argument : [A, B, C, D, E]
Map with key-value less than or equal to given argument : [A, B, C, D, E]
参考资料 : https://docs.oracle.com/javase/10/docs/api/java/util/NavigableSet.html#headSet(E)