Java 一维数组的定义方法(三种)
- int[] arr={1,2,3,4};
- int[] arr=new int[4];
- int[] arr=new int[]{1,2,3,4};
三种定义方式,如果是有new关键字,那么下堆上开辟空间。
例:
打印数组
三种打印方式:
- 用for循环。
例:
for (int i=0;i<arr.length;i++){ arr[i] =i ;}
- 用 for … each语句。
int[] arr=new int[5];
for(int a : arr){
System.out.println(a)
}
- 用Arrays.toString().打印。
一维数组的拷贝方式四种拷贝方式:
- 利用for循环。
- 用Arrays.copyOf(arr,arr.length);
括号内分为二部分:{要拷贝的原始数组}{要拷贝的长度}
Arrays.copyOf(arr,arr.length);
- 利用System.arrCopy(arr,0,brr,0,arr.length);
括号内分为五部分:{原始数组}{原始数组开始位置}{拷贝后的数组,拷贝后数组的起始位置}{要拷贝的长度}
System.arrCopy(arr,0,brr,0,arr.length);
- 利用arr.clone()代码进行拷贝。
数组拷贝分为深拷贝和浅拷贝两种方式,深拷贝和浅拷贝的区别在于深拷贝对于新数组会在堆上开辟一段新的空间,而浅拷贝新的数组和原始数组共享内存,修改原始数组会影响到新数组。