您的位置:首页 > 编程语言 > Java开发

Java 容器(一) Arrays

2016-05-04 17:23 381 查看
纸上得来终觉浅
1.Java容器,目的是存储对象,称为:Collection,分类包括List,Set,Queue,Map;每个分类都有几个实现版本;详细如下图所示:



除此之外还涉及到Collections和Arrays这两个辅助工具类,以及Comparable和Comparator这两个用于比较的接口。后面分别对它们的使用总结成笔记,这篇文章不讲容器,先讲述数组和操作数组的工具类Arrays;

2.Arrays

数组与容器唯一的优势是存取效率比较高(现在认为基本没什么区别),缺陷是数组的大小是固定的; 另外有一个工具类Arrays支持对数组的操作,也就是本篇所讲:

package roadArchitectWeb.Test;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Comparator;
public class Test1{
public static void main(String[] args) {
Integer[] a = {1,2,3,4,5,6,7,8,9,10};
Integer[] b = {10,9,8,7,6,5,4,3,2,1};
/*equals*/
System.out.println("Arrays.equals(a, b):"+Arrays.equals(a, b));
/*sort排序*/
Arrays.sort(b,new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
return o1.compareTo(o2);
}
});
System.out.println("Arrays.sort:"+Arrays.toString(b));
/*fill*/
Arrays.fill(a,30);
System.out.println("Arrays.fill:"+Arrays.toString(a));
/*Arrays.binarySearch()*/
System.out.println("Arrays.binarySearch()+"+Arrays.binarySearch(b,5));
/*Arrays.hashCode()*/
System.out.println("Arrays.hashCode():"+Arrays.hashCode(a));
/*Arrays.asList*/
ArrayList<Integer> arrayList = new ArrayList<Integer>(Arrays.asList(b));
System.out.println("Arrays.asList:"+arrayList);
}
}
结果如下:

Arrays.equals(a, b):false
Arrays.sort:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
Arrays.fill:[30, 30, 30, 30, 30, 30, 30, 30, 30, 30]
Arrays.binarySearch()+4
Arrays.hashCode():701064577
Arrays.asList:[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息