数组
使用
- 声明:
int[] a
或int a[]
- 创建数组:
- 用默认值新建:
int[] a = new int[100]
- 自定义初始化值的新建:
int[] a = {2,3,5,7,11,13};
- 匿名数组新建:
new int[] {17,15,23,52};
- 用默认值新建:
- ps:下标是从0开始的
- ps:数组的初始化默认值
- 数字数组创建时默认为0
- Boolean数组创建时为false
- 对象数组创建时为null
- ps:数组一旦被创建就不能被改变大小了,只能改变元素内容
- ps:数组长度允许为0,数组长度为0与为空不一样
常用方法
array.length
获取长度Arrays.toString()
返回包含数组所有值的字符串Arrays.copyOf()
拷贝和Arrays.copyOfRange()
Arrays.sort()
使用了优化过的快速排序算法Arrays.binarySearch()
使用二分搜索算法查找值,并且返回下标值Arrays.fill()
设置所有元素为xxequals()
如果数组大小相同,每个元素对应相等,返回true
for each循环
- 语法格式:for(variable:collection) statment
- 使用要求:一个数组或者是实现了Iterable接口的对象,例如ArrayList
数组的拷贝
- 拷贝数组内容到新数组去的正确方法是:
int[] a1=Arrays.copyOf(a2,a2.length);
,其中第二个参数是数组长度,若需要扩充数组大小可以a2 = Arrays.copyOf(a2,2*a2.length);
,此时多余的元素空位将会按照数组默认赋值来 - 若为
int[] a1 = a2;
,只是数组所在地址的地址位置的值传递,所以两个变量指向的依旧是同一个数组
多维数组
类似于一维数组的创建和使用
其实多维数组的内部原理为,数组的数组,即数组的元素中存入别的数组的内存地址