Collections集合类

    我一直有一种观点,就是尽量使用jdk提供的code,不要秀智商自己写。

    自己写的弊端很明显:1、bug问题。jdk比较都是大牛编的,还经过众多大众使用检验,bug率应该远远低于你个人写的。2、通用性。你写的规范还好,别人看函数名,类名就可以看懂。但是如果动不动就几万行、几十万或几百万行代码,谁有闲工夫一遍遍翻你写的工具类找实用方法。3、问题的警示性。你写的编译器没法智能提醒。但是像final啊,.unmodifiableMap之类,你试图去改变的时候,编译器会自动提示。开发更友好。

    因为之前习惯使用List,Set,Map等集合类。忽视了Collections类,下面来介绍一下。

jdk Collections 类注释

    上图是Collections类的jdk注释。我们中注释中可以看出,这个类提供了大量的静态方法,用于集合处理。具体方法有:

    1、排序,sort方法。

    2、二分查找,binary开头

    3、倒置,reverse

    4、打乱-即混洗  shuffle

    5、交换 swap

    6、copy (深拷贝)

    7、min

    8、max

    9、旋转 rotate

    10、list子串查找,从前也可以从后

    11、unmodifiable系列 readonly 方法

    12、synchronized系列,不过 目前有更高效的 线程安全集合类 Concurrent系列。下回合讲。

    这里主要罗列了,平时大家易于使用的,但是 都喜欢自己写的方法。其他冷门方法就不在这里罗列。建议有空去看看 Collections类的源码,加深自己对算法的理解。

你可能感兴趣的:(Collections集合类)