集合框架(Collections工具类的方法使用-
Collections:是针对集合进行操作的工具类,都是静态方法。
*
* 面试题:
* Collection和Collections的区别?
* Collection:是单列集合的顶层接口,有子接口List和Set。
* Collections:是针对集合操作的工具类,有对集合进行排序和二分查找的方法
*
* 要知道的方法
* 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):随机置换
1 package Day18; 2 3 import java.util.ArrayList; 4 import java.util.Collections; 5 import java.util.List; 6 7 /* 8 * Collections:是针对集合进行操作的工具类,都是静态方法。 9 * 10 * 面试题: 11 * Collection和Collections的区别? 12 * Collection:是单列集合的顶层接口,有子接口List和Set。 13 * Collections:是针对集合操作的工具类,有对集合进行排序和二分查找的方法 14 * 15 * 要知道的方法 16 * public static <T> void sort(List<T> list):排序 默认情况下是自然顺序。 17 * public static <T> int binarySearch(List<?> list,T key):二分查找--集合必须是排序后的元素 18 * public static <T> T max(Collection<?> coll):最大值 19 * public static void reverse(List<?> list):反转 20 * public static void shuffle(List<?> list):随机置换 21 */ 22 public class Map13 { 23 public static void main(String[] args) { 24 //首先定义一个List集合----子类可以实现父类,但是父类不可以实现子类 25 List<Integer> list = new ArrayList<Integer>(); 26 //向集合中添加元素 27 list.add(20); 28 list.add(70); 29 list.add(40); 30 list.add(87); 31 //进行输出查看list集合 32 //System.out.println(list); 33 34 //对List集合使用Collections工具类进行自然排序 35 Collections.sort(list); 36 //对自然排序后的集合进行输出查看 37 //System.out.println(list); 38 39 //对排序后的集合进行二分查找---查找元素在集合中的索引值 40 // public static <T> int binarySearch(List<?> list,T key):二分查找--集合必须是排序后的元素 41 System.out.println(Collections.binarySearch(list,20)); 42 //如果查找到元素不在集合中---测输出的索引值是集合长度加1再添一个负号 43 System.out.println(Collections.binarySearch(list,700)); 44 45 //使用集合Collections工具类进行输出List集合中的最大值 46 //public static <T> T max(Collection<?> coll):最大值 47 System.out.println(Collections.max(list)); 48 49 //使用Collections集合工具对List集合进行反转 50 //public static void reverse(List<?> list):反转 51 Collections.reverse(list); 52 //输出查看集合是否反转 53 System.out.println(list); 54 55 56 //使用针对集合操作的Collections集合操作类进行对List集合的置换 57 //public static void shuffle(List<?> list):随机置换 58 Collections.shuffle(list); 59 //进行集合的输出查看--是否随机置换 60 System.out.println(list); 61 62 63 } 64 }