操作集合的工具类:Collections

数组有工具类 Arrays,集合同样有可操作 Collection 和 Map 的工具类:Collections

  1. // Collections 工具类可操作的对象:Collection 和 Map
  2. public class TestCollections {
  3. public static void main(String[] args) {
  4. List list = new ArrayList();
  5. list.add("s");
  6. list.add("b");
  7. list.add("j");
  8. list.add("n");
  9. list.add("a");
  10. System.out.println(list);// [s, b, j, n, a]
  11. // -----------------关于排序-----------------
  12. // 1.反转指定列表中元素的顺序:void reverse(List list);
  13. Collections.reverse(list);
  14. System.out.println(list);// [a, n, j, b, s]
  15. // 2.使用默认随机源对指定列表进行置换:void shuffle(List list);
  16. // 3.根据元素的自然顺序对指定列表按升序进行排序,列表中的所有元素都必须实现 Comparable
  17. // 接口。此外,列表中的所有元素都必须是可相互比较的:void sort(List list);
  18. Collections.sort(list);
  19. System.out.println(list);// [a, b, j, n, s]
  20. // 4.根据指定比较器产生的顺序对指定列表进行排序,此列表内的所有元素都必须可使用指定比较器相互比较:
  21. // void sort(List list,Comparator c);
  22. // 参见 TreeSet 的定制排序
  23. // 5.在指定列表的指定位置处交换元素:void swap(List list,int i,int j);
  24. Collections.swap(list, 0, 2);
  25. System.out.println(list);// [j, b, a, n, s]
  26. // -----------------关于查找、替换-----------------
  27. // 1.根据元素的自然顺序,返回给定 collection 的最大元素:T max(Collection coll);
  28. System.out.println(Collections.max(list));// s
  29. // 2.根据指定比较器产生的顺序,返回给定 collection 的最大元素:
  30. // T max(Collection coll,Comparator comp);
  31. // 3.返回指定 collection 中等于指定对象的元素数:int frequency(Collection c,Object o);
  32. list.add("a");
  33. System.out.println(list);// [j, b, a, n, s, a]
  34. System.out.println(Collections.frequency(list, "a"));// 2
  35. // 4.将所有元素从一个列表复制到另一个列表:void copy(List dest,List src);
  36. // 注意:目标列表(dest.size)的长度至少必须等于源列表(src.size)
  37. List destList = Arrays.asList(new Object[list.size()]);// 或者大于list.size()
  38. Collections.copy(destList, list);
  39. System.out.println(destList);// [j, b, a, n, s, a]
  40. // 5.使用另一个值(newVal)替换列表中出现的所有某一指定值(oldVal):
  41. // boolean replaceAll(List list,T oldVal,T newVal);
  42. System.out.println(Collections.replaceAll(destList, "a", "o"));// true
  43. System.out.println(destList);// [j, b, o, n, s, o]
  44. // -----------------关于同步控制-----------------
  45. // 举例(详见API):返回指定列表支持的同步(线程安全的)列表:List synchronizedList(List list);
  46. List synList = Collections.synchronizedList(list);
  47. }
  48. }
时间: 2024-10-12 21:34:32

操作集合的工具类:Collections的相关文章

操作集合的工具类 Collections

这个工具类里提供了大量方法对元素进行排序,查询和修改. 可以将集合设置为不可变,对集合对象实现同步控制. 同步控制 将制定集合包装成线程同步的集合.解决多线程并发访问集合时的线程安全问题.用synchronizedXxxx方法. 设置不可变集合. emptyXxx返回一个空的,不可变的集合 singletonXxx返回一个只包含指定对象不可变的集合对象. unmodifiableXxx,返回指定集合对象的不可变视图. 都是返回指定集合的只读版本 java9中增加了of方法,可以直接创建一个包含o

跟王老师学集合(十):操作集合的工具类:Collections

操作集合的工具类:Collections 主讲人:王少华  QQ群号:483773664 Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具提供了大量方法对集合元素进行排序.查询和修改等操作,还提供了将集合元素实现同步控制等方法. 一.排序操作 (一).方法 Collections提供了如下几个方法用于对List集合元素进行排序 static void reverse(List list):反转指定List集合中元素的顺序 static void shu

Collections工具类:操作集合的工具类

Collections工具类:操作集合的工具类 Java提供了一个操作Set List Map等集合的工具类:Collections,该工具类提供了大量方法对集合元素进行排序.查询和修改等操作.还提供了将集合对象设置为不可变,对集合对象实现同步控制等方法. 排序操作 ArrayList arrayList = new ArrayList(); arrayList.add(2); arrayList.add(-1); arrayList.add(4); arrayList.add(6); Syst

集合框架工具类Collections

* Collections演示. * 1,用于操作集合的工具类. * 2,提供了很多的静态方法. * * 比如对list集合排序,二分查找,位置置换. * 对排序的元素进行顺序的逆转.reverseOrder * 还可以获取集合的最大值和最小值. * 最牛叉的是将非同步的集合转成同步的集合 synchronizedXXX package cn.itcast.p4.collections;   import java.util.ArrayList; import java.util.Collect

集合的工具类Collections

Collections 是集合的工具类, 里面定义了很多静态方法 binarySearch(List,Object) 使用二分法查找集合中的元素,如果找到就返回该元素在集合中的下标,如果没有找到就返回负数 copy(List,List) 将一个集合中的所有元素复制到另一个集合. disjoint(Collection,Collection) 两个集合中如果没有相同的元素返回true min,max(Collection) 找出集合中最小与最大的元素,规则由实现Comparable接口中的comp

7.8 操作集合的工具类:Collections

目录 一.排序操作 二.查找和替换功能 三.同步控制 四.设置不可变集合 五.Java 9新增的不可变集合 一.排序操作 Collections提供了如下常用类方法用于对List集合进行排序: ★void reverse(List list):反转指定的List集合中的元素顺序. ★void shuffle(List list):对Lsit集合中的元素进行随机排序(shuffle方法模仿了"洗牌"动作). ★void sort(List list):根据元素的自然顺序对指定集合元素按升

java集合框架--工具类Collections

1.Collections概述 是针对集合操作的工具类. 2.Collection和Collections的区别? Collection:是单列集合的顶层接口,而Collections是针对集合操作的工具类. Collection有子接口List和Set,而Collections有对集合进行排序和二分查找的方法. 3.Collections工具类的功能 public static <T> void sort(List<T> list):默认情况下是对集合的自然排序. public

java集合框架工具类Collections,集合的操作

1 import java.util.*; public class asList { public static void main(String args[]) { // int arr[] = {1,2,3,4,45}; // List<int[]> list = Arrays.asList(arr); // list.add("qq"); 这里不能添加,因为数组的长度是固定的 // Integer[] nums = {2,4,5,2}; // List<Int

集合框架工具类--Collections排序

package ToolCollectionsDemo; import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List; public class SrcSortDemo { /**  * @param args  */ public static void main(String[] args) { List<String> list = ne