JAVA基础(四)-数组篇

一、一维数组声明、初始化

下面以int型数组为例

1、声明:int[] array

2、初始化:3种方式

(1)int[] array = {1, 2, 3}; // 无new的静态初始化

(2)int[] array = new int[3];
                       array[0] = 1;
                       array[1] = 2;
                       array[2] = 3;

(3)int[] array = new int[]{1, 2, 3}; // 有new的静态初始化

注:int[] array = new int[];会报编译错误

 

二、二维数组声明、初始化

下面以int型数组为例

1、声明:int[][] array

2、初始化:3种方式,与一维类似

(1)int[][] array = {{1, 2, 3}, {4}}; // 无new的静态初始化

          注:此时array[0].length为3,array[1].length为1,说明第二维的长度不是固定的。

(2)int[][] array = new int[2][3]; // 然后再赋值,与一维类似
                       注:这里第二维的长度可省略;给第二维赋值的时候不能使用无new的静态初始化,譬如array[1] = {4};

(3)int[][] array = new int[][]{{1, 2, 3}}; // 有new的静态初始化

           注:当然上例这样array.length就限死为1了,比较建议用第二种初始化方法省略二维数组长度的形式。

 

三、数组默认值

java的八种基本类型:byte、short、int、long、float、double、boolean、char,默认值分别为

byte、short、int、long:0

float、double:0.0

char:'\0'

boolean:false

别的对象类型默认值均为null

 

四、判断数组中是否包含某个元素

1、ArrayUtils.contains(array, objectToFind);

使用org.apache.commons.lang3.ArrayUtils中的boolean contains(final Object[] array, final Object objectToFind)方法,观察源码可知核心是遍历数组依次调用equals方法(objectToFind非null的情况下)直到找到相等为止。

2、Arrays.binarySearch(a, key);

使用java.util.Arrays。对于有序数组可以采取这个二分查询的方法,时间复杂度优于第一个方法。

 

五、数组添加元素

ArrayUtils.add(array, element);

使用org.apache.commons.lang3.ArrayUtils中的T[] add(final T[] array, final T element)方法,当然真的遇到这种情况倒还不如用List得了。

 

 

参考文章列表:

https://blog.csdn.net/xuanzhiruoshui/article/details/78714499

https://www.cnblogs.com/hujunzheng/p/3871899.html

https://zhidao.baidu.com/question/505401638.html

猜你喜欢

转载自blog.csdn.net/LiuYiFan_TOT/article/details/86664732