黑马程序员_Collections和Arrays
来源:互联网 发布:外链网盘源码 编辑:程序博客网 时间:2024/06/05 20:37
-----------------------------------------------------------------android培训、java培训、期待与您交流! ---------------------------------------------------------------
Collections
对集合进行操作的工具类
常用方法:
排序
sort(List<T> list)
sort(List<T> list,Comparator<? super T> c)
最大元素
max(Collection<? extendsT> coll)
max(Collection<? extendsT> coll,Comparator<? super T> comp)
二分查找List集合
binarySearch(List<? extendsComparable<? superT>> list, T key)
binarySearch(List<? extends T> list,T key,Comparator<? super T> c)
替换
fill(List<? super T> list,T obj) 替换List集合中的所有元素
replaceAll(List<T> list, T oldVal,T newVal) 替换List集合的
反转
reverse(List<?> list)
swap(List<?> list, int i,int j) 替换两个元素
反转比较器(返回一个比较器)
reverseOrder()
reverseOrder(Comparator<T> cmp)
(重要)解决集合多线程中不安全的问题
synchronizedCollection(Collection<T> c)
synchronizedList(List<T> list)
synchronizedMap(Map<K,V> m)
synchronizedSet(Set<T> s)
打乱顺序
shuffle(List<?> list)
shuffle(List<?> list,Random rnd)
Arrays
对集合操作的工具类
二分查找
binarySearch
复制
copyOf
范围复制
copyOfRange
判断数组是否相等
equals
替换
fill
排序
sort
(重要)将数组转换成List集合
asList(T... a)
好处:
可以使用集合的方法来操作数组的元素
但是:不可以改变数组长度,即不可以使用集合的增删方法
否则:会产生UnsupportedOperationException
如果数组中的元素都是对象,那么变成集合时,数组中元素就直接转成集合中元素。
如果数组中的元素都是基本数据类型,那么会将该数组作为集合中元素存在。
将集合转换成数组
Collection接口的toArray方法
注:
转换数组时,数组的长度要多长?
如果指定的长度小于集合的size时,toArray会创建一个新的数组,长度为集合size。
如果指定的长度大于集合的size时,不会新创建数组,使用原数组,剩余用null添补。
所以定义大小时,最好定义为集合size。
为什么要将集合变成数组?
是为了限定对元素的操作,比如限定其不要添加删除等操作。
- 黑马程序员_Collections和Arrays
- 黑马程序员_Collections和Arrays
- 黑马程序员_Collections和Arrays
- 黑马程序员_Collections
- 黑马程序员_日记62_Collections工具类方法
- 黑马程序员-Collections和Arrays工具类
- 黑马程序员----------Java基础------------Collections和Arrays
- 黑马程序员_java基础7--Map和Collections和Arrays
- 黑马程序员 + 第17天 Collections类和Arrays类
- 黑马程序员-day17工具类Collections和Arrays
- 黑马程序员--泛型、集合框架工具类:collections和Arrays
- 黑马程序员----集合工具类(Arrays和Collections)
- 黑马程序员——07_Collections.reverseOrder()传入比较器时需注意
- 黑马程序员_<<Collections,Arrays>>
- 黑马程序员14. Collections&Arrays
- 黑马程序员--Collections与Arrays
- 黑马程序员---泛型,Collections,Arrays
- Java基础第十七天学习日记_Collections和Arrays的常用方法、高级for循环、可变参数、静态导入
- Oracle Database Server Messages(五) . . . .
- C++遍历中删除std::map元素
- 基于用户投票的排名算法(一):Delicious和Hacker News
- UVa 301 - Transportation
- JMS和AMQP的区别
- 黑马程序员_Collections和Arrays
- 【毕设资料】Web版RSS阅读器(五)——初步完成阅读功能
- hdu 1754 线段树
- 使用apt-get update
- 基础练习 特殊回文数
- MFC树形控件(CTreeCtrl)用法
- Form Builder 代码汇编一:表单当前所有记录输出到CSV文件
- ASIHTTPRequest实现断点续传
- Ganymed SSH-2 for Java系列3之执行远程shell 命令