Java Collections unmodifiableNavigableSet()
Java集合类的
unmodifiableNavigableSet()方法用于获取不可修改的指定的导航集的视图。
语法
以下是
unmodifiableNavigableSet()方法的声明:
public static <T> NavigableSet<T> unmodifiableNavigableSet(NavigableSet<T> s)
参数
参数 |
说明 |
必需/可选 |
s |
这是要返回其不可修改视图的导航集。 |
必需 |
返回
unmodifiableNavigableSet()方法返回指定导航集的不可修改视图。
异常
NA
兼容版本
Java 1.8及更高版本
示例1
import java.util.*;
public class CollectionsUnmodifiableNavigableSetExample1 {
public static void main(String[] args) {
NavigableSet<Integer> set = new TreeSet<>();
Collections.addAll(set, 1,2,3,4,5);
System.out.println("Initial Set: " + set);
NavigableSet<Integer> set2 = Collections.unmodifiableNavigableSet(set);
System.out.println("Unmodifiable Navigable Set: " + set2);
//Modifying the original set
set.add(15);
System.out.println("Unmodifiable Navigable Set: " + set2);
}
}
输出:
Initial Set: [1, 2, 3, 4, 5]
Unmodifiable Navigable Set: [1, 2, 3, 4, 5]
Unmodifiable Navigable Set: [1, 2, 3, 4, 5, 15]
示例2
import java.util.*;
public class CollectionsUnmodifiableNavigableSetExample2 {
public static void main(String[] args) {
NavigableSet<String> set = new TreeSet<>();
Collections.addAll(set, "Google", "Facebook", "Instagram");
System.out.println("Initial Set: " + set);
NavigableSet<String> set2 = Collections.unmodifiableNavigableSet(set);
System.out.println("Unmodifiable Navigable Set: " + set2);
//Modifying the original set
set.add("Twitter");
System.out.println("Unmodifiable Navigable Set: " + set2);
}
}
输出:
Initial Set: [Facebook, Google, Instagram]
Unmodifiable Navigable Set: [Facebook, Google, Instagram]
Unmodifiable Navigable Set: [Facebook, Google, Instagram, Twitter]
示例3
import java.util.*;
public class CollectionsUnmodifiableNavigableSetExample3 {
public static void main(String[] args) {
NavigableSet<Integer> set = new TreeSet<>();
Collections.addAll(set, 11, 13, 17);
System.out.println("Original Set: " + set);
NavigableSet<Integer> set2 = Collections.unmodifiableNavigableSet(set);
set2.add(19);
}
}
输出:
Original Set: [11, 13, 17]
Exception in thread "main" java.lang.UnsupportedOperationException
at java.base/java.util.Collections$UnmodifiableCollection.add(Collections.java:1056)
at myPackage.CollectionsUnmodifiableNavigableSetExample3.main(CollectionsUnmodifiableNavigableSetExample3.java:9)