Java(3)

xiaoxiao2022-06-11  27

数组:数组是一个包含相同类型的集合。 1.一维数组 1.1一维数组的定义: 1.11先声明后初始化方式:

int[] arr; arr=new int[3];

1.12声明的同时进行初始化方式:

int[] arr=new int[]{1,2,3};

1.13先声明后初始化使用系统分配的默认值:

int[] arr=new int[3];

注意:数组一旦初始化定义其大小,就不可改变。 1.2.一维数组的遍历: 1.21 for循环遍历

int[] arr=new int[3]; for(int i=0;i<arr.length;i++) { System.out.print(arr[i]); }

1.22 foreach 遍历

int[] arr=new int[3]; for(int i:arr) { System.out.print(i); }

1.23 Arrays类中的方法:toString();方法

int[] arr=new int[3]; System.out.println(Arrays.toString(arr));

1.3一维数组的拷贝方式: 1.31 数组名.clone();

int[] arr=new int[3]; int[] brr=arr.(); for(int a:brr) { System.out.println(i); }

1.32 Arrays.copyOf(数组名,新的数组长度)

int a; int[] arr=new int[3]; arr=Arraya.copyOf(arr,arr.length+a); //扩容:数组长度增加 arr=Arrays.copyOf(arr,arr.length-a); //缩容:数组长度减少 //注意:调用Arrays.copyOf(,)的时候,数组名内的地址已改变

1.33 System.arraycopy(from,fromdex,to,todex,count)

A: from // 要拷贝的数组 B: fromdex //从数组的哪个下标开始拷贝 C: to //拷贝到的目标数组 D: todex //在目标数组的哪个下标开始存放 E: count //拷贝的元素个数

1.34 for循环的拷贝

int[] arr=new int[5]; int[] brr=new int[arr.length]; int i=0,j=0; for(;i<arr.length;i++) { brr[j]=arr[i]; j++; }

2 .二维数组 2.1 二维数组的定义

2.11 int[][]arr={{1,2,3},{4,5,6},{7,8,9}}; 2.12 int[][]arr=new int[3][]; arr[0]=new int[3]; arr[1]=new int[3]; arr[2]=new int[3]; 2.13 int[][]arr={new int[3],new int[3],new int[3]};

2.2 二维数组的遍历 2.21Arrays.deepToString(数组名);

int[][]arr={{1,2,3},{4,5,6},{7,8,9}}; System.out.println(Arrays.deepToString(arr));

2.22 foreach语句遍历

int[][]arr={{1,2,3},{4,5,6},{7,8,9}}; for(int[] brr:arr){ for(int i:brr){ System.out.println(i); } }

2.23 for循环进行遍历

int[][]arr={{1,2,3},{4,5,6},{7,8,9}}; for(int i=0;i<arr.length;i++) { for(int j=0;j<arr[i].lengtj;j++) { System.out.println(arr[i][j]); } }

2.3 二维数组的拷贝 2.31 数组名.clone();

int[][] arr=new int[3][3]; int[][] brr=new int[3][3]; for(int i=0;i<arr.length;i++){ brr[i]=arr[i].clone(); }

2.32 Arrays.copyOf(数组名,newlength);

int[][] arr=new int[3][3]; for(int i=0;i<arr.length;i++){ arr[i]=Arrays.copyOf(arr[i],arr[i].length); }

2.33 for循环;

int[][] arr=new int[3][3]; int[][] brr=new int[3][3]; for(int i=0;i<arr.length;i++) { for(int j=0;j<arr[i].length;j++) { brr[i][j]=arr[i][j]; } }

2.34 Sysytem.arraycopy()

int[][] arr=new int[3][3]; int[][] brr=new int[3][3]; for(int i=0;i<arr.length;i++){ System.arraycopy(arr[i],0,brr[i],0,arr[i].length); }

3.数组的内存分配方式

转载请注明原文地址: https://www.6miu.com/read-4930440.html

最新回复(0)