Collections中的实用方法
总结一下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中的实用方法的更多相关文章
- 关于Collections中的sort()方法总结
用Java集合中的Collections.sort方法对list排序的两种方法 本文部分引用自:http://my.oschina.net/leoson/blog/131904 用Collection ...
- Collections中的各种方法
一.各种方法介绍 Counter 统计个数 elements most_common subtract defaultdict 字典默认值 ChainMap 合并多个映射对象(字典) Ord ...
- Python中os和shutil模块实用方法集…
Python中os和shutil模块实用方法集锦 类型:转载 时间:2014-05-13 这篇文章主要介绍了Python中os和shutil模块实用方法集锦,需要的朋友可以参考下 复制代码代码如下: ...
- Python中os和shutil模块实用方法集锦
Python中os和shutil模块实用方法集锦 类型:转载 时间:2014-05-13 这篇文章主要介绍了Python中os和shutil模块实用方法集锦,需要的朋友可以参考下 复制代码代码如下: ...
- 网站开发中很实用的 HTML5 & jQuery 插件
这篇文章挑选了15款在网站开发中很实用的 HTML5 & jQuery 插件,如果你正在寻找能优化网站,使其更具创造力和视觉冲击,那么本文正是你需要的.这些优秀的 jQuery 插件能为你的网 ...
- C#中==与Equals方法的区别
using System;using System.Collections.Generic;using System.Linq;using System.Text; namespace Console ...
- 2.C#中泛型在方法Method上的实现
阅读目录 一:C#中泛型在方法Method上的实现 把Persion类型序列化为XML格式的字符串,把Book类型序列化为XML格式的字符串,但是只写一份代码,而不是public static s ...
- EF封装类 增加版,增加从缓存中查找数据方法,供参考!
EF封装类 增加版,增加从缓存中查找数据方法,供参考! 这个类是抽象类,我这里增加了需要子类验证的方法ValidateEntity,方便扩展,若想直接使用该类,可以将该类更改成静态类,里面所有的方法都 ...
- jquery中的clone()方法使用
clone([Even[,deepEven]]) 描述: 克隆匹配的DOM元素并且选中这些克隆的副本. 在想把DOM文档中元素的副本添加到其他位置时这个函数非常有用. 1:一个布尔值(true 或者 ...
随机推荐
- 国产龙芯3A3000处理器评测:与英特尔差距明显
国产龙芯3A3000处理器评测:与英特尔差距明显 国产龙芯3A3000处理器评测:与英特尔差距明显 新浪财经APP缩小字体放大字体收藏微博微信分享579 新酷产品第一时间免费试玩,还有众多优质达人分享 ...
- 使用shell+python脚本实现系统监控并发送邮件
1.编辑shell脚本 [root@web03 ~/monitor_scripts]# cat inspect.sh #!/bin/bash # 设置磁盘的阀值 disk_max=90 # 设置监控i ...
- git OpenSSL SSL_connect问题
遇到这个问题,查找别人也遇到,省时间不写了直接复制 在使用Git来克隆仓库报了错误,如下: fatal: unable to access 'https://github.com/xingbuxing ...
- python3 摆放家具练习
摆放家具 需求: 1)房子有户型,总面积和家具名称列表 新房子没有任何家具 2)家具有名字和占地面积.其中: 床:占4平米 衣柜:占2平米 餐桌:占1.5平米 3)将以上三件家具添加到房子中 4)打印 ...
- Docker五分钟搭建Wordpress
当你看到这篇文章的时候,表明你已经有docker的基础知识了,或者可以看上一篇文章 Docker 入门教程. 传统的使用wordpress搭建网站,意味着你需要搭建以下四个环境: php: apach ...
- Git指令大全
仓库 # 在当前目录新建一个Git代码库 $ git init # 下载一个项目和它的整个代码历史 $ git clone [url] 配置 # 显示当前的Git配置 $ git config --l ...
- 西门子 S7-200 通过以太网通讯模块连接MCGS 通讯
北京华科远创科技有限研发的远创智控ETH-YC模块,以太网通讯模块型号有MPI-ETH-YC01和PPI-ETH-YC01,适用于西门子S7-200/S7-300/S7-400.SMART S7-20 ...
- [翻译] 预览 C# 10 的新东西
原文: [Introducing C# 10] 作者: Ken Bonny 本周早些时候(译注:原文发表于5月1日),我关注了 Mads Torgersen 在 DotNet SouthWest ...
- CAP理论之思考
分布式系统的最大难点就是各个节点如何保持一致.最近我在工作中就遇到这样的问题,不同节点之间,彼此通过API,进行通信,交互数据,但有些服务节点存在延迟等问题,导致我看到的并不是实时的数据,以及系统更新 ...
- cachecloud生产环境搭建
步骤 1 机器管理 机器初始化Redis环境 添加机器 执行: cachecloud-init.sh脚本 2 cachecloud添加机器的时候需要添加一个用户cachecloud-open ad ...