总结一下java.util.Collections类内部的静态方法。


checkedCollection(Collection<T> , Class<T> type)

checkedList(List<T> , Class<T> type)

checkedMap(Map<K,V>,Class<K> keyType,Class<V> valueType)

checkedSet<Set<T>, Class<T> type)

checkedSortedMap(SortedMap<K,V>,Calss<K> keyType,Class<V> valueType)

checkedSortedSet(SortedSet<T>,Class<T> type)

以上方法产生Collection或者Collection的具体子类型的动态类型安全的师徒。在不可能实用静态检查版本时使用这些方法。


max(Collection)

min(Collection)

返回参数Collection中最大或最小元素-采用Collection中的内置自然比较法。


max(Collection,Comparator)

min(Collection , Comparator)

返回参数Collection中最大或最小元素-采用Collection中的Comparator进行比较。


indexOfSubList(List source,List target)

返回target在source中第一次出现的位置,或者在找不到时返回-1


lastIndexOfSubList(List source,List target)

返回target在source中最后一次出现的位置,或者在找不到时返回-1


replaceAll(List<T> , T oldVal,T newVal)

使用newVal替换所有的oldVal


reverse(List)

逆序所有元素次序


reverseOrder()

reverseOrder(Comparator<T>)

返回一个Comparator,它可以逆转实现了Comparator<T> 的对象集合的自然顺序。第二个版本可以逆转所提供的Comparator的顺序。


rotate(List,int distance)

所有元素向后移动distance个位置,将末尾的元素循环到前面来。


shuffle(List)

shuffle(List,Random)

随机改变指定列表的顺序。


sort(List<T>)

sort(List<T>,Comparator<?Super T> c)

排序List


copy(List<? super T> dest, List<?extends T> src)

将src中的元素复制到dest


swap(List,int i , int j )

交换list中位置i和位置j的元素,通常比自己写的代码快


fill(List<? super T > , T x )

用对象x替换list中的所有元素


nCopies( int n , T x )

返回大小为n的List<T> , 次List不可改变,其中的引用都指向x


disjoint( Collection,Collection )

当两个集合没有任何相同元素时,返回true


frequency( Collection,Object x )

返回Collection中等于x的元素个数


emptyList()

emptyMap()

emptySet()

返回不可变的空List,Map或Set。这些方法都是泛型的。因此所产生的结果将被参数化为所希望的类型


singleton(T x )

singletonList(T x )

singletonMap(K key, V value)

产生不可变的Set<T>、List<T>或Map<K,V>,它们都只包含基于所给定的参数的内容而形成的单一项。


list(Enumeration<T> e )

产生一个ArrayList<T>,它包含的元素的顺序,与(旧式的)Enumeration(Iterator的前身)返回这些元素的顺序相同。用来转换遗留的老代码。


enumeration(Collection<T>)

为参数生成一个旧式的Enumeration<T>


Collections中的实用方法的更多相关文章

  1. 关于Collections中的sort()方法总结

    用Java集合中的Collections.sort方法对list排序的两种方法 本文部分引用自:http://my.oschina.net/leoson/blog/131904 用Collection ...

  2. Collections中的各种方法

    一.各种方法介绍 Counter 统计个数   elements  most_common  subtract defaultdict 字典默认值 ChainMap  合并多个映射对象(字典) Ord ...

  3. Python中os和shutil模块实用方法集…

    Python中os和shutil模块实用方法集锦 类型:转载 时间:2014-05-13 这篇文章主要介绍了Python中os和shutil模块实用方法集锦,需要的朋友可以参考下 复制代码代码如下: ...

  4. Python中os和shutil模块实用方法集锦

    Python中os和shutil模块实用方法集锦 类型:转载 时间:2014-05-13 这篇文章主要介绍了Python中os和shutil模块实用方法集锦,需要的朋友可以参考下 复制代码代码如下: ...

  5. 网站开发中很实用的 HTML5 & jQuery 插件

    这篇文章挑选了15款在网站开发中很实用的 HTML5 & jQuery 插件,如果你正在寻找能优化网站,使其更具创造力和视觉冲击,那么本文正是你需要的.这些优秀的 jQuery 插件能为你的网 ...

  6. C#中==与Equals方法的区别

    using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace Console ...

  7. 2.C#中泛型在方法Method上的实现

    阅读目录   一:C#中泛型在方法Method上的实现 把Persion类型序列化为XML格式的字符串,把Book类型序列化为XML格式的字符串,但是只写一份代码,而不是public static s ...

  8. EF封装类 增加版,增加从缓存中查找数据方法,供参考!

    EF封装类 增加版,增加从缓存中查找数据方法,供参考! 这个类是抽象类,我这里增加了需要子类验证的方法ValidateEntity,方便扩展,若想直接使用该类,可以将该类更改成静态类,里面所有的方法都 ...

  9. jquery中的clone()方法使用

    clone([Even[,deepEven]]) 描述: 克隆匹配的DOM元素并且选中这些克隆的副本. 在想把DOM文档中元素的副本添加到其他位置时这个函数非常有用. 1:一个布尔值(true 或者 ...

随机推荐

  1. /var/log/syslog日志usb接口

    p:~# cat /proc/bus/input/devices |grep usbP: Phys=usb-0000:00:05.1-1/buttonS: Sysfs=/devices/pci0000 ...

  2. SpringBoot使用protobuf格式的接口

    SpringBoot使用protobuf格式的接口 建立SpringBoot项目,pom.xml内容如下: <?xml version="1.0" encoding=&quo ...

  3. shell初学之nginx(域名)

    创建两个以域名区分的虚拟网站: 1 #!/bin/bash 2 curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/ ...

  4. Docker无法正常启动的原因及解决办法

    一.Docker启动异常表现: 1.状态反复restaring,用命令查看 $docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS ...

  5. Keil编译后的Code,RO,RW,ZI分别表示什么以及和芯片Flash、SRAM的对应关系

    在使用keil开发STM32应用程序时,点击Build后在Build Output窗口中经常会有如下信息:<ignore_js_op> 以前一直好奇这几个参数和实际使用的STM32芯片中F ...

  6. 统计行数、文件夹个数、文件个数的相关shell命令

    极客君最近做项目,刚好遇到需要统计一些sql文件数量的问题,用到一些实用的shell命令,记录下来,以后万一还能用上呢? 如果在终端不打开文件看到一共多少行,则可以使用wc命令来实现: wc -l [ ...

  7. HarmonyOS去除页面顶部title的方式

    在config.json文件中module节点中添加如下代码 "metaData":{ "customizeData":[ { "name" ...

  8. Day029 JDK8中新日期和时间API (二)

    # JDK8中新日期和时间API (二) Instant介绍 Instant:时间线上的一个瞬时点. 这可能被用来记录应用程序中的事件时间 戳. 在处理时间和日期的时候,我们通常会想到年,月,日,时, ...

  9. 【分布式】-- 微服务抽奖系统后台整合MyBatis-Plus

    1.整合MyBatis-Plus背景 [分布式]-- 基于Nacos.OpenFeign搭建的微服务抽奖系统后台小案例 本篇是基于上一篇博文微服务抽奖系统后台对持久层MyBatis进行更换,并整合My ...

  10. githubssh配置