public static <K,V> SortedMap<K,V> unmodifiableSortedMap(SortedMap<K,? extends V> m)
-
返回指定有序映射的不可修改视图。此方法允许模块为用户提供对内部有序映射的“只读”访问。在返回的有序映射上执行的查询操作将“读完”指定的有序映射。试图修改返回的有序映射(无论是直接修改、通过其 collection 视图修改,还是通过其
subMap、
headMap 或
tailMap 视图修改)将导致抛出
UnsupportedOperationException。
如果指定的有序映射是可序列化的,则返回的有序映射也将是可序列化的。
-
-
参数:
-
m
- 将为其返回一个不可修改视图的有序映射。
返回:
- 指定有序映射的不可修改视图。
-
举个简单的栗子:
package go.jacob.day921;
import java.util.Collections;
import java.util.HashMap;
import java.util.Map;
public class Demo3 {
public static void main(String[] args) {
Map<String,Person1> map=new HashMap<String,Person1>();
map.put("a", new Person1("kangkang",6));
Map<String,Person1> unmodiMap=Collections.unmodifiableMap(map);
// unmodiMap.put("a", new Person1("maria",8)); 不备注会提示java.lang.UnsupportedOperationException错误
Person1 p=unmodiMap.get("a");
p.name="lily";
}
}
class Person1{
String name;
int age;
public Person1(String name, int age) {
this.name = name;
this.age = age;
}
}