Collections API

本文详细介绍了Java中Collections工具类的功能与用法,包括排序、随机排列、反转集合、查找子列表、替换元素等实用操作,并解释了部分方法的工作原理。

Collections

Collections是针对集合类(Collection)的一个帮助类,他提供一系列静态方法实现对各种集合的搜索、排序、线程安全化等操作。

  • sort(List<T> list);
    // 对集合进行排序, 通过底层通过转换为数组Arrays.sort进行排序, Arrays.sort底层又通过ComparableTimSort.sort排序:需要实现Comparable接口。
  • shuffle(List<?> list, Random rnd);
    // 对集合进行随机排列。
  • reverse(List<?> list);
    // 反转集合中元素的顺序

  • binarySearch(List<? extends Comparable<? super T>> list, T key);
    // 通过二分检索查找指定集合中的元素, 返回索引位置

  • max(Collection<? extends T> coll, Comparator<? super T> comp);
    // 通过Comparator接口实现进行比较(大于0, 等于0 , 小于0), 获得最大值
  • min(Collection<? extends T> coll, Comparator<? super T> comp);
    // 通过Comparator接口实现进行比较(大于0, 等于0 , 小于0), 获得最小值
  • max(Collection<? extends T> coll);
    // 通过自然数进行比较, 获得最大值
  • min(Collection<? extends T> coll);
    // 通过自然数进行比较, 获得最小值
  • indexOfSubList(List<?> source, List<?> target);
    // 查找subList中首次出现位置的索引
  • lastIndexOfSubList(List<?> source, List<?> target);
    // 查找subList中最后出现的位置的索引
  • replaceAll(List<T> list, T oldVal, T newVal);
    // 替换集合中的某个元素, 如果该元素存在返回true
  • rotate(List<T> list, int distance);
    // 集合中的元素后移distance个位置, 后面遮盖住的位置移动到前面; 底层数量大于100个通过3次reverse实现, 通过排序算法实现
  • copy(List<? super T> dest, List<? extends T> src);
    // 将src中的元素全部复制到dest中, 并且覆盖索引;(src的存储大小必须小于dest)
  • swap(List<?> list, int i, int j);
    // 交换集合中指定索引位置的元素
  • fill(List<? super T> list, T obj);
    // obj替换集合中所有的元素
  • nCopies(int n, T o);
    // 返回大小为n的List集合, 其中所有的元素内容指向o
  • enumeration(final Collection<T> c);
    // 根据集合生成一个旧版枚举
  • list(Enumeration<T> e);
    // 旧版枚举生成ArrayList
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值