Collectons工具类常用方法

Collectons工具类常用方法

java.util 类 Collections继承java.lang.Object

Colletions类中的方法都是静态方法,只需要Collections.方法名()的方式来调用就行,需多看多用

  • public static <T extends Comparable<? super T>> void sort(List<T> list)
    根据元素的自然顺序 对指定列表按升序进行排序。列表中的所有元素都必须实现 Comparable 接口。此外,列表中的所有元素都必须是可相互比较的(也就是说,对于列表中的任何 e1 和 e2 元素,e1.compareTo(e2) 不得抛出 ClassCastException)。
    此排序方法具有稳定性:不会因调用 sort 方法而对相等的元素进行重新排序。指定列表必须是可修改的,但不必是大小可调整的。该排序算法是一个经过修改的合并排序算法(其中,如果低子列表中的最高元素小于高子列表中的最低元素,则忽略合并)。此算法提供可保证的 n log(n) 性能。 此实现将指定列表转储到一个数组中,并对数组进行排序,在重置数组中相应位置处每个元素的列表上进行迭代。这避免了由于试图原地对链接列表进行排序而产生的 n2 log(n) 性能。

  • public static <T> int binarySearch(List<? extends Comparable<? super T>> list,T key)使用二分搜索法搜索指定列表,以获得指定对象。在进行此调用之前,必须根据列表元素的自然顺序对列表进行升序排序(通过 sort(List) 方法)。如果没有对列表进行排序,则结果是不确定的。如果列表包含多个等于指定对象的元素,则无法保证找到的是哪一个。

  • public static <T> T max(Collection<? extends T> coll,Comparator<? super T>comp)
    根据指定比较器产生的顺序,返回给定 collection 的最大元素。collection 中的所有元素都必须可通过指定比较器相互比较(也就是说,对于 collection 中的任意 e1 和 e2 元素,comp.compare(e1, e2) 不得抛出 ClassCastException)。

  • public static <T> T min(Collection<? extends T> coll,Comparator<? super T> comp)
    根据指定比较器产生的顺序,返回给定 collection 的最小元素。collection 中的所有元素都必须可通过指定比较器相互比较(也就是说,对于 collection 中的任意 e1 和 e2 元素,comp.compare(e1, e2) 不得抛出 ClassCastException)。
    此方法在整个 collection 上进行迭代,所以它需要的时间与 collection 的大小成正比

  • public static void swap(List<?> list, int i, int j)
    在指定列表的指定位置处交换元素。(如果指定位置相同,则调用此方法不会更改列表。)

  • public static void reverse(List<?> list)
    反转指定列表中元素的顺序。

  • public static int indexOfSubList(List<?> source, List<?> target)
    返回指定源列表中第一次出现指定目标列表的起始位置;如果没有出现这样的列表,则返回 -1。更确切地讲,返回满足 source.subList(i, i+target.size()).equals(target) 的最低索引 i;如果不存在这样的索引,则返回 -1。(如果 target.size() > source.size(),则返回 -1。)

  • public static <T> boolean addAll(Collection<? super T> c,T... elements)
    将所有指定元素添加到指定 collection 中。可以分别指定要添加的元素,或者将它们指定为一个数组。此便捷方法的行为与 c.addAll(Arrays.asList(elements)) 的行为是相同的,但在大多数实现下,此方法运行起来可能要快得多。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值