javaSE14
1 package LS_14; 2 3 import java.util.Collection; 4 import java.util.HashMap; 5 import java.util.Map; 6 import java.util.Set; 7 8 public class TestMap { 9 //map的接口的特点 10 //键值对的形式 11 //键是唯一的,一个只能对应一个值;但是一个值可以有多个键映射 12 //HashMap是其实现类 13 14 public static void main(String[] args) { 15 Map map = new HashMap(); 16 //添加值,键值都是没有要求类型的 17 //一般是键-》String ,值-》Object 18 map.put(1, 1); 19 map.put("gok", 1); 20 map.put(new Object(), 1); 21 map.put(true, 1); 22 System.out.println(map); 23 24 //获取值 25 System.out.println(map.get(1)); 26 27 //删除键指定的键//还有删除指定的键值对remove(2,3) 28 //当没有指定键的时候返回null,要注意空指针异常 29 Object obj = map.remove(1); 30 System.out.println(obj); 31 System.out.println(map); 32 33 System.out.println(map.containsValue(1)); 34 System.out.println(map.isEmpty()); 35 System.out.println(map.size()); 36 //当键一样时,后面的会替换前面的 37 38 System.out.println("======================"); 39 //集合视图 40 //keySet():获取集合中的所有的键 41 Set<Object> set = map.keySet(); 42 for (Object key : set) { 43 System.out.println(key); 44 } 45 46 //values():获取集合中的所有值 47 Collection<Object> coll = map.values(); 48 for (Object value : coll) { 49 System.out.println(value); 50 } 51 System.out.println("=============="); 52 //entrySet():获取键值对的 53 Set<Map.Entry<Object, Object>> entrySet = map.entrySet(); 54 for (Map.Entry<Object, Object> entry : entrySet) { 55 System.out.println(entry); 56 } 57 58 //线程不同步,效率比较高 59 } 60 }
1 package LS_14; 2 3 import java.util.SortedSet; 4 import java.util.TreeSet; 5 6 public class TestSortedSet { 7 //插入SortedSet的所有元素必须实现Comparable接口 8 //或者在提供外部的比较接口 9 public static void main(String[] args) { 10 SortedSet<String> sorted = new TreeSet<String>(); 11 sorted.add("1"); 12 sorted.add("3"); 13 sorted.add("2"); 14 sorted.add("4"); 15 sorted.add("6"); 16 sorted.add("6"); 17 sorted.add("7"); 18 System.out.println(sorted); 19 } 20 }
会当凌绝顶,一览众山小