Java中的ConcurrentSkipListSet的ceiling()方法
java.util.concurrent.ConcurrentSkipListSet.ceiling() 方法是Java中的内置函数,它返回大于或等于给定元素的集合中最小的元素,如果不存在这样的元素则返回null。
语法:
ConcurrentSkipListSet.ceiling(E e)
参数: 该函数接受一个参数e,即要匹配的元素。
返回值: 该函数返回大于或等于e的最小元素,如果不存在这样的元素则返回null。
异常: 该函数显示以下异常:
- ClassCastException-如果指定的元素与当前集合中的元素无法比较
- NullPointerException-如果指定的元素为null
下面的程序说明了ConcurrentSkipListSet.ceiling()方法的用法:
程序1: 查找一个数字的Ceiling。
// Java程序演示ConcurrentSkipListSet的ceiling()方法
import java.util.concurrent.*;
class ConcurrentSkipListSetCeilingExample1 {
public static void main(String[] args)
{
//创建一个Set对象
ConcurrentSkipListSet<Integer> Lset =
new ConcurrentSkipListSet<Integer>();
//将元素添加到此Set中
Lset.add(45);
Lset.add(72);
Lset.add(31);
Lset.add(13);
Lset.add(89);
//打印Set的元素
System.out.println("The set contains: ");
for (Integer i : Lset)
System.out.print(i + " ");
//35的Ceiling
System.out.println("\nCeiling of 35: " + Lset.ceiling(35));
//100的Ceiling
System.out.println("\nCeiling of 100: " + Lset.ceiling(100));
}
}
The set contains:
13 31 45 72 89
Ceiling of 35: 45
Ceiling of 100: null
程序2: 显示ceiling()中的NullPointerException。
// Java程序演示ConcurrentSkipListSet的ceiling()方法
import java.util.concurrent.*;
import java.io.*;
class ConcurrentSkipListSetCeilingExample2 {
public static void main(String[] args) throws IOException
{
//创建一个Set对象
ConcurrentSkipListSet<Integer> Lset =
new ConcurrentSkipListSet<Integer>();
//将元素添加到此Set中
Lset.add(45);
Lset.add(72);
Lset.add(31);
Lset.add(13);
Lset.add(89);
try {
//null的Ceiling
System.out.println("Ceiling of null: " + Lset.ceiling(null));
}
catch (Exception e) {
System.out.println("Exception : " + e);
}
}
}
Exception:java.lang.NullPointerException
参考资料: https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/ConcurrentSkipListSet.html#ceiling(E)
极客教程