码迷,mamicode.com
首页 > 编程语言 > 详细

数组与Arrays

时间:2016-08-11 12:52:32      阅读:355      评论:0      收藏:0      [点我收藏+]

标签:

数组是程序中很常用的数据存储,集合List的底层也是通过数组操作的

1. 数组初始化有三种方式

直接初始化数组:int[] ary = {1, 2, 3};

初始化一个指定长度的空数组:int[] ary = new int[10];

初始化一个数组并赋值,不能指定长度:int[] ary= new int[]{1, 2, 3, 4};

数组长度:ary.length

数组克隆:int[] ary2 = ary.clone(),浅层克隆,如果数组中的元素为引用类型,则修改克隆后的数组元素中的属性,会影响原数组

数组复制:System.arraycopy(ary1, int n, ary2, int m, int length),将数组ary1从下标 n ~ n + length - 1 复制到ary2的 m ~ m + length - 1位置

2. java.util.Arrays

Arrays是官方提供的一个数组操作的工具类,通过该工具类我们可以满足我们常规的数组操作需要

  String    toString(Object[] ary):将数组元素连接为字符串,连接后的表示形式为[1, 2, 3],一般用于查看数组元素信息

    void     sort(Object[] ary, Comparator<? extends Object> comparator):对数组进行排序,第二个参数为自定义比较器,如果缺省第二个参数,则默认升

      序排序

       int     binarySearch(Object[] ary, Object obj):二分法查找数组中obj元素的位置,返回元素下标,如果不存在,则返回一个负数,该方法使用注意两点

       使用前要对数组进行排序,否则返回结果一般不正确

       未查找到元素时,返回一个负数,不一定是-1,不能以-1判断是否查找到结果

      void   fill(Object[] ary, Object obj):使用元素obj填充数组

Object[]   copyOf(Object[] ary, int n):复制数组的前n位元素,返回新数组,如果n大于数组的长度,则超出部分为初始化值,可用于数组扩容

Object[]   copyOfRange(Object[] ary, int from, int to):复制数组下标from到to的元素,并返回新数组

boolean   equals(Object[] ary1, Object[] ary2):比较两个数组是否相等,如果数组都不为空,则比较元素是否相等

       如果元素类型为基本数据类型,使用==比较

       如果元素类型为引用数据类型,使用equals比较

boolean   deepEquals(Object[] ary1, Object[] ary2):深度比较两个数组是否相等,主要针对数组元素也是数组的情况,会递归比较下级元素,直到最深层元

       素都进行比较

 

数组与Arrays

标签:

原文地址:http://www.cnblogs.com/windyrain/p/5757859.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!