总结一下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. commit信息修改

    场景:向社区提交commit信息,code reviewer给你回复说,请添加TrivialFix并且完善commit信息.好吧,虽然这对代码的运行无关紧要,但是对于日后的代码管理是很有必要的. 解决 ...

  2. unity editor模式下读取文件夹资源

    string path = EditorUtility.OpenFolderPanel("Load png Textures", "", "" ...

  3. CefSharp如何进行页面的缩放(即Ctrl+滚轮)

    问题:CefSharp如何进行页面的缩放 摘要:由于CefSharp并没有提供鼠标滚轮事件.只有一个KeyboardHandler事件,因此只能接收到键盘事件. 环境:CefShap.Wpf 了解Ce ...

  4. thinkphp api接口 统一结果返回处理类

    20210602 修正 wqy的笔记:http://www.upwqy.com/details/216.html 返回结果处理,归根结底 主要是有两点 数据结构和返回的数据类型 1.数据类型 :一般情 ...

  5. AIFramework框架Jittor特性(上)

    AIFramework框架Jittor特性(上)

  6. Harmony生命周期

    Harmony生命周期 系统管理或用户操作等行为,均会引起Page实例在其生命周期的不同状态之间进行转换.Ability类提供的回调机制能够让Page及时感知外界变化,从而正确地应对状态变化(比如释放 ...

  7. 三维视觉惯性SLAM的有效Schmidt-EKF

    三维视觉惯性SLAM的有效Schmidt-EKF An Efficient Schmidt-EKF for 3D Visual-Inertial SLAM 论文地址: http://openaccess ...

  8. eclipse解决中文乱码

    参考链接:https://blog.csdn.net/lzc2644481789/article/details/97244261

  9. mybatis——解决属性名和数据库字段名不一致问题

    首先说一下,我的数据库名字叫mybatis,里边有一张user表,表中有三个字段,id.name.pwd:然后实体类中对应三个属性id.name.password(id和name跟数据库字段名一致,但 ...

  10. 「题解」NWRRC2017 Joker

    本文将同步发布于: 洛谷博客: csdn: 博客园: 简书. 题目 题目链接:洛谷 P7028.gym101612J. 题意概述 有一个长度为 \(n\) 的数列,第 \(i\) 个元素的值为 \(a ...