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 ...
随机推荐
- MIT 2012分布式课程基础源码解析-事件管理封装
这部分的内容主要包括Epoll/select的封装,在封装好相应函数后,再使用一个类来管理相应事件,实现的文件为pollmgr.{h, cc}. 事件函数封装 可看到pollmgr.h文件下定一个了一 ...
- PHP学习笔记(4) - 实现自己的MVC框架
在PHP中实现一个所谓的MVC框架非常简单.这里说一下思路. 一.首先用spl_autoload_register函数实现自己的类型自动加载机制.这样其他代码都不需要再考虑如何将类所在的文件inclu ...
- Javascript代码摘录
判断浏览器窗口高度 if (document.documentElement.clientHeight <800) { var elm = document.getElementById('Di ...
- 【python】Python 3 +pycharm中文支持解决方案
使用环境:window10 + python 3.5.1 方法:在代码前端增加代码:# -*-coding:gbk-*-
- 更新 requests 包之后报 has no attribute '__getitem__' 的错
翻代码的时候看到段一年多前用 python 写的下载图片站图片的代码. 测试下看还能不能下到图片,结果发现跑不起来了,报了个如下的错误: TypeError: 'instancemethod' obj ...
- 【mapping】 springmvc的注解mapping无法生效的问题
springmvc 始终无法加载 注解 map, 解决办法 八月 11, 2015 8:24:42 下午 org.springframework.web.servlet.DispatcherServl ...
- Python元类实践--自己定义一个和collections中一样的namedtuple
大家可能很熟悉在collections模块中有一个很好用的扩展数据类型-namedtuple. 如果你还不知道这个类型,那么请翻看标准手册. 我利用元类轻松定义一个namedtuple. 先把代码贴上 ...
- Spring中argNames的含义
最近学习Spring,一直不太明白Srping的切面编程中的的argNames的含义,经过学习研究后,终于明白,分享一下 先看一个例子: 需要监控的类: package bean; public cl ...
- BZOJ 3998 [TJOI 2015] 弦论 解题报告
这是一道后缀自动机经典题目. 对于 $t=0$ 的情况:每个节点都代表一个子串,所以我们给每个节点的 $Size$ 都记为 $1$, 对于 $t=1$ 的情况:我们只给 $last$ 节点的 $Siz ...
- 判断数据库表字段是否为null值,采用is null
use UserCentergo select * from AccountDetails1.判断一个字段是否为null值,进行查询:update AccountDetails set Project ...