/** * @param args * 面试题 * HashMap和Hashtable的区别 * 共同点: * 底层都是哈希算法,都是双列集合 * 区别: * 1,HashMap是线程不安全的,效率高,JDK1.2版本 * Hashtable是线程安全的,效率低,JDK1.0版本的 * 2,HashMap可以存储null键和null值 * Hashtable不可以存储null键和null值 */ public static void main(String[] args) { HashMap<String, Integer> hm = new HashMap<>(); hm.put(null, 23); hm.put("李四", null); System.out.println(hm); /*Hashtable<String, Integer> ht = new Hashtable<>(); //ht.put(null, 23); ht.put("张三", null); System.out.println(ht);*/ System.out.println("1111111111111");
=============================================================================================================================/** * Collecitons中的常见方法 * public static <T> void sort(List<T> list) public static <T> int binarySearch(List<?> list,T key) public static <T> T max(Collection<?> coll) public static void reverse(List<?> list) public static void shuffle(List<?> list) */ public static void main(String[] args) { //demo1(); //demo2(); ArrayList<String> list = new ArrayList<>(); list.add("a"); list.add("c"); list.add("d"); list.add("g"); list.add("f"); //System.out.println(Collections.max(list)); //根据默认排序结果获取集合中的最大值 //Collections.reverse(list); //反转集合 Collections.shuffle(list); //随机置换,可以用来洗牌 System.out.println(list); } public static void demo2() { ArrayList<String> list = new ArrayList<>(); list.add("a"); list.add("c"); list.add("d"); list.add("f"); list.add("g"); System.out.println(Collections.binarySearch(list, "c")); System.out.println(Collections.binarySearch(list, "b")); } public static void demo1() { ArrayList<String> list = new ArrayList<>(); list.add("c"); list.add("a"); list.add("a"); list.add("b"); list.add("d"); System.out.println(list); Collections.sort(list); //将集合排序 System.out.println(list); }
时间: 2024-10-10 16:19:56