一、定义:数组可以批量创建相同类型的量。
注意事项: 在 Java 中, 数组中包含的变量必须是 相同类型.
1.2 创建数组
- int[ ] array1={ } (静态)
- int[ ] array2=new int[ ] { } (动态)
- int array3=new int[5]
1.3 数组的使用
代码示例: 获取长度 & 访问元素
1.获取长度 int[ ] array={1,2,3}
System.out.println(array.length)
注意事项 - 使用 arr.length 能够获取到数组的长度. . 这个操作为成员访问操作符. 后面在面向对象中会经常用到.
- 使用 [ ] 按下标取数组元素. 需要注意, 下标从 0 开始计数
- 使用 [ ] 操作既能读取数据, 也能修改数据.
- 下标访问操作不能超出有效范围 [0, length - 1] , 如果超出有效范围, 会出现下标越界异常
- length不是方法,是属性
2.访问元素 - for:
int[ ] array={1,2,3}
for(int i=0;i<array.length;i++){
System.out.println(arr[i]);
}
7.for-each:
for(表达式1:表达式2){表达式1:数组种变量的类型,表达式2:数组名)
int[] arr = {1, 2, 3};
for (int x : arr) {
System.out.println(x);
}
(数组类型:数组名) - 数组作为方法的参数
2.1 基本用法 - 数组作为方法的返回值
数组拷贝:1.arraycopy(){(原数组,从原数组的某个位置开始,现数组,现数组的某个位置开始,长度)无返回值
2.Arrays.copyOf(有返回值int)
3.数组名。clone():数组名指原数组4.for
1和2的区别与联系:
2方法的内部调用了1,1是被native 所修饰的方法,1比较快
2.2以上几种方法对数组当中如果是简单类型来讲,就是深拷贝,如果数组中存放的是引用类型,则为浅拷贝
浅拷贝(两个饮用同时指向一个对象,那么通过一个引用,修改当前对象的值,那另一个引用也会受到影响
binarySearch(fromIdex,toIndex)
二、二维数组
定义int[] []array={{1,2},{3,4,5,6}};
int[] []array=new int[][]{{1,2},{3,4,5,6}};
int[] []array=new int[3][2]
int[] []array=new int[3][](不规则二维数组)
打印:Arrays,deeptoString初始化