Java笔记(二十四)……集合工具类Collections&Arrays
Collections
集合框架的工具类,方法全部为静态
Collections与Collection的区别
Collection是集合框架的一个顶层接口,里面定义了单列集合的共性方法
Collections是集合框架的一个工具类,该类中的方法都是静态的,提供的方法中可以对List集合进行排序,二分查找等,通常常用的集合都是线程不安全的,因为要提高效率,如果多线程操作这些集合时,可以通过该工具类的同步方法,将线程不安全的集合转换成安全的
常用方法
对List进行排序
static <T extends Comparable<? super T>>
voidsort(List<T> list)
static <T> voidsort(List<T> list, Comparator<? super T> c)
对List进行二分查找
static <T> intbinarySearch(List<? extends Comparable<? super T>> list, T key)
static <T> intbinarySearch(List<? extends T> list, T key, Comparator<? super T> c)
逆转排序比较器
static <T> Comparator<T>reverseOrder()
static <T> Comparator<T>reverseOrder(Comparator<T> cmp)
获取线程安全的集合
static <T> Collection<T>synchronizedCollection(Collection<T> c)
随机对List方法中的元素进行置换
static voidshuffle(List<?> list)
static voidshuffle(List<?> list, Random rnd)
Arrays
用于操作数组的工具类,里面的方法都是静态的
常用方法
将数组转换成List集合
static <T> List<T>asList(T... a)
(T… a)为可变参数,写在参数列表的最末尾
将数组转成List集合有何好处
可以使用集合的思想和方法才操作数组
注:
不可以对数组转成的List集合进行增删操作,因为数组的长度是固定的,如果增删,会产生UnsupportedOperationException
如果数组中的元素都是对象,那么变集合时,集合中存储的都是数组中的元素
如果数组中的元素是基本数据类型,那么会将数组作为元素存储在集合中
静态导入
import static java.util.Arrays.*;
导入的是Arrays这个类中的所有静态成员
当类名重名时,需要指定具体的包名
当方法重名时,需要指定具体的对象或类
Java笔记(二十四)……集合工具类Collections&Arrays的更多相关文章
- Java从零开始学二十四(集合工具类Collections)
一.Collections简介 在集合的应用开发中,集合的若干接口和若干个子类是最最常使用的,但是在JDK中提供了一种集合操作的工具类 —— Collections,可以直接通过此类方便的操作集合 二 ...
- python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法
python3.4学习笔记(二十四) Python pycharm window安装redis MySQL-python相关方法window安装redis,下载Redis的压缩包https://git ...
- (C/C++学习笔记) 二十四. 知识补充
二十四. 知识补充 ● 子类调用父类构造函数 ※ 为什么子类要调用父类的构造函数? 因为子类继承父类,会继承到父类中的数据,所以子类在进行对象初始化时,先调用父类的构造函数,这就是子类的实例化过程. ...
- Java:集合工具类-Collections
Java.util.Collections 集合框架工具类Collections,其方法都是静态的,本身没有构造函数. 常见方法: static <T extends Comparable< ...
- java之集合工具类Collections
Collections类简介 java.utils.Collections 是集合工具类,用来对集合进行操作.此类完全由在 collection 上进行操作或返回 collection 的静态方法组成 ...
- 吴裕雄--天生自然java开发常用类库学习笔记:集合工具类Collections
import java.util.Collections ; import java.util.List ; import java.util.Set ; public class Collectio ...
- Java常用类(五)之集合工具类Collections
前言 Java提供了一个操作Set.List和Map等集合的工具类:Collections,该工具类提供了大量方法对集合进行排序.查询和修改等操作, 还提供了将集合对象置为不可变.对集合对象实现同步控 ...
- java的集合工具类Collections
集合框架的工具类. Collections:集合框架的工具类.里面定义的都是静态方法. Collections和Collection有什么区别? Collection是集合框架中的一个顶层接口,它里面 ...
- Java笔记(二十五)……其他常用API
System类 工具类全部都是静态方法 常用方法 获取系统属性信息 static PropertiesgetProperties() static StringgetProperty(String k ...
随机推荐
- 解决Twitter Bootstrap Tab URL链接问题
例如这样的一个Tabs 代码: <ul class="nav nav-tabs" id="myTab"> <li class="ac ...
- hdu 5654 xiaoxin and his watermelon candy 树状数组维护区间唯一元组
题目链接 题意:序列长度为n(1<= n <= 200,000)的序列,有Q(<=200,000)次区间查询,问区间[l,r]中有多少个不同的连续递增的三元组. 思路:连续三元组-& ...
- poj 2104 K-th Number 划分树,主席树讲解
K-th Number Input The first line of the input file contains n --- the size of the array, and m --- t ...
- MFC应用程序的开发流程
(1)根据应用程序特性在"MFC AppWizard[exe]"应用程序向导各步骤对话框进行选择,创建一个应用程序的框架. (2)利用资源编辑器为程序编辑或添加资源,如编辑菜单.添 ...
- linux下fflush(stdin)的使用问题
参考自linux下如何清空(刷新)stdin缓冲区 首先,fflush在C/C++/POSIX标准中只定义了处理输出流的行为,对于像stdin这种输入流,这是未定义行为undefined behavi ...
- Unity3d 调用C++的DLL
原地址:http://www.cnblogs.com/alongu3d/archive/2013/04/20/3031904.html Unity 3D 调用DLL的方法 本文转载:渡蓝的博客园 ht ...
- UVA 10269 Adventure of Super Mario
看了这里 http://blog.csdn.net/acm_cxlove/article/details/8679230的分析之后自己又按照自己的模板写了一遍,算是对spfa又加深了一步认识(以前真是 ...
- easyui源码翻译1.32--ValidateBox(验证框)
前言 使用$.fn.validatebox.defaults重写默认值对象.下载该插件翻译源码 validatebox(验证框)的设计目的是为了验证输入的表单字段是否有效.如果用户输入了无效的值,它将 ...
- free 命令解释
free 命令 buffers and cached 解释 N多人总是询问,当在linux在输入free时内存总数怎么加起来不一样啊,下面我来解释一下free命令的输出. 我们运行free命令时都会看 ...
- 多设备官方教程(6)控制多版本API
Supporting Different Platform Versions While the latest versions of Android often provide great APIs ...