Java小白(05)

mac2025-09-17  33

对于容器操作,一般我们分成三种操作类型: 一:定位; 二:替换; 三:求长;目前我们看到的是数组,数组的定位,替换,求长分别是: 动态初始化数组 int[] arrays = new int[6]; 静态初始化数组 int[] arrays = {1,2,3,4,5}; 数组的定位 int item = arrays[4]; int item2 = arrays[6]; int[] arrays = {1,2,3,4,5,6}; System.out.println(arrays[0]); 数组的替换 int[] arrays = {1,2,3,4,5,6}; arrays[0] = 7; System.out.println(arrays[0]); 求长 int length = arrays.length; int[] arrays = {1,2,3,4,5,6}; System.out.println(arrays.length); 数组反转玩法一 在原有位置上做反转,不新建新的数组 int[] arrays = {1,2,3,4,5,6};//数组声明 int i = arrays.length/2; for(int j = 0;j<i;j++){ int temp = arrays[j];//临时变量 arrays[j] = arrays[arrays.length-1-j]; arrays[arrays.length-1-j] = temp; } //数组遍历 for(int j = 0;j<arrays.length;j++){//j是局部变量在此还可以定义使用 System.out.print(arrays[j]); } System.out.println(); 数组反转玩法二 新建新的数组做反转 int[] arrays = {1,2,3,4,5,6}; int[] result = new int[arrays.length]; for(int j = 0;j<arrays.length;j++){ result[j] = arrays[arrays.length-1-j]; } for(int j = 0;j<result.length;j++){ System.out.print(result[j]); } System.out.println(); 增强for循环——for each(遍历数组和集合) for(int item : result){ System.out.println(item);//item从result中从第一位拿到最后一位,result有多长就循环多少次,每拿出来一个item就遍历一次 }

例子

找出数组中的最大值 int[] arrays = {1,2,8,4,5,6,7}; int max = 0; for(int item : arrays){ if(max < item){ max = item; } } System.out.println(sum); 找出数组的最大值且打印出其下标 int max = 0; int idndex = 0; for(int i = 0;i<arrays.length;i++){ if(max < arrays[i]){ max = arrays[i]; index = i; } } System.out.println(index); 二维数组 数组的动态的初始化过程 int[][] arrays = new int[5][5];//定义数组时后面的5可以删掉前面的5不能删掉 数组的静态的初始化过程 int[][] arrays = { {1,2,3}, {4,5,6}, {7,8,9} }; 以下定义数组也行 int[][] arrays = { {1,2,3}, {4,5,6,5,4}, {7,8,9,4,1,2,5} }; 当去掉后面的5int[][] arrays = new int[5][]; System.out.println(arrays[3]);//输出结果为null int[][] arrays = new int[5][]; arrays[3] = new int[5]; System.out.println(arrays[3][3]);//输出结果为0

对于二维数组的动态声明过程不能没有行号,可以没有列号,但是没有列号会引起一些麻烦。 对于二维数组整个情况来看,里面的每一个一维数组之间的地址不是连续的,是通过二维数组地址指向来连续的。 数组的内存一定都是连续的,对于二维数组来说,内容分别被存在不同的位置,而真正调用它的位置是连续的。 二维数组不能以混合的方式定义

二维数组的简单例子

int[][] arrays = { {1,2,3}, {4,5,6,7}, {1,2,5,6} }; System.out.println(arrays[1][2]); 二维数组的遍历 int[][] arrays = { {1,2,3}, {4,5,6,7}, {1,2,5,6} }; for(int i = 0;i<arrays.length;i++){ for(int j = 0;j<arrays[i].length;j++){ System.out.print(" "+arrays[i][j]); } System.out.println(); }
最新回复(0)