JAVA基础笔记——Collections与Arrays
2015-05-31 21:34
429 查看
Collections:是java.util.*下的一个类,对集合进行操作
常用静态方法:
static Object max(Collection coll) 根据元素的自然顺序,返回给定 collection 的最大元素。
static Object min(Collection coll) 根据元素的自然顺序,返回给定 collection 的最小元素。
static void fill(List list, Object obj) 使用指定元素替换指定列表中的所有元素。
static void sort(List list):自然升序排序
static int binarySearch(List list, Object key) 使用二分搜索法搜索指定列表,以获得指定对象。
public static Comparator reverseOrder():可以**强行逆转**Collection的自然排序
public static Comparator reverseOrder(Comparator cmp):可以强行逆转指定比较器的顺序
static void shuffle(List list):对集合元素随机排序(可以用于骰子,扑克的发牌(见Random))
Arrays: java.util.*下面的类,用来操作数组
数组变集合:可以用集合的思想来操作数组,比较方便
public static List asList(Object… a)返回一个受指定数组支持的固定大小的列表(返回的是不可变的List(长度固定))。
注意:
1.将数组变成集合,不可以使用集合的增删方法,因为数组的长度是固定的
2.如果数组中的元素都是对象,变成集合时,会将数组中的对象变成集合中的元素
如果数组中的元素都是基本数据类型,那么会将数组变成集合中的元素存在
如:
集合变数组:为了限定对元素的操作
Collection.toArray() :
返回的数组长度如何确定:
如果指定数组的长度小于集合的size,方法内部会创建一个新数组,长度为size
如果指定数组长度大于集合的size,就不会创建数组了,使用传进来的数组,长度为size
Arrays.asList()和Collection.toArray() 一起,充当了基于数组的 API 与基于 collection 的 API 之间的桥梁。返回的列表是可序列化的,并且实现了 RandomAccess。
高级for与iterator:
常用静态方法:
static Object max(Collection coll) 根据元素的自然顺序,返回给定 collection 的最大元素。
static Object min(Collection coll) 根据元素的自然顺序,返回给定 collection 的最小元素。
static void fill(List list, Object obj) 使用指定元素替换指定列表中的所有元素。
static void sort(List list):自然升序排序
static int binarySearch(List list, Object key) 使用二分搜索法搜索指定列表,以获得指定对象。
public static Comparator reverseOrder():可以**强行逆转**Collection的自然排序
public static Comparator reverseOrder(Comparator cmp):可以强行逆转指定比较器的顺序
static void shuffle(List list):对集合元素随机排序(可以用于骰子,扑克的发牌(见Random))
Arrays: java.util.*下面的类,用来操作数组
数组变集合:可以用集合的思想来操作数组,比较方便
public static List asList(Object… a)返回一个受指定数组支持的固定大小的列表(返回的是不可变的List(长度固定))。
注意:
1.将数组变成集合,不可以使用集合的增删方法,因为数组的长度是固定的
2.如果数组中的元素都是对象,变成集合时,会将数组中的对象变成集合中的元素
如果数组中的元素都是基本数据类型,那么会将数组变成集合中的元素存在
如:
int[] a0 = {1,2,3}; List<int[]> list = Arrays.asList(a0); System.out.println(list);//[[I@659e0bfd] Integer[] a = {1,2,3}; List<Integer> arr = Arrays.asList(a); System.out.println(arr);//[1, 2, 3]
集合变数组:为了限定对元素的操作
Collection.toArray() :
返回的数组长度如何确定:
如果指定数组的长度小于集合的size,方法内部会创建一个新数组,长度为size
如果指定数组长度大于集合的size,就不会创建数组了,使用传进来的数组,长度为size
String[] str = arr.toArray(new String[arr.size()]); System.out.println(Arrays.toString(str));
Arrays.asList()和Collection.toArray() 一起,充当了基于数组的 API 与基于 collection 的 API 之间的桥梁。返回的列表是可序列化的,并且实现了 RandomAccess。
高级for与iterator:
高级for:只能获取集合中的元素,不能对集合进行操作 Iterator:除了(**只能正向**)遍历,还可以进行remove操作(ListIterator可以**先正向迭代后反向迭代**,同时可以在遍历时 对集合进行增删改查)
相关文章推荐
- java对世界各个时区(TimeZone)的通用转换处理方法(转载)
- java-注解annotation
- java-模拟tomcat服务器
- java-用HttpURLConnection发送Http请求.
- java-WEB中的监听器Lisener
- Android IPC进程间通讯机制
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- 介绍一款信息管理系统的开源框架---jeecg
- 聚类算法之kmeans算法java版本
- java实现 PageRank算法
- PropertyChangeListener简单理解
- 插入排序
- 冒泡排序
- 堆排序
- 快速排序
- 二叉查找树
- [原创]java局域网聊天系统