- 数组一旦被创建,大小时不可以改变的。数组的元素可以时任何数据类型,包括基本类型和引用类型数组变量属于引用类型,数组也可以看成对象,数组中每个元素相当于该对象的成员变量。数组本身就是对象,Java中的对象都是在堆中的,因此数组无论保存原始类型还是其他对象来行,数组对象本身时在堆中的
package Using; public class Demo_1 { public static void main(String[] args) { //普通for循环 int [] arrays = {1,2,3,4,5}; //遍历 for (int a = 0; a < arrays.length; a++) { System.out.println(arrays[a]+"t"); } //计算所有元素的和 int sum = 0; for (int i = 0; i < arrays.length; i++) { sum += arrays[i]; } System.out.println(sum); //查找最大元素 int max = arrays[0]; for (int i1 = 1; i1 < arrays.length; i1++) { if(arrays[i1]>max) max = arrays[i1]; } System.out.println(max); } }增强for循环
package Using; public class Demo_2 { public static void main(String[] args) { //增强for循环 //一般用于遍历,但是取不到下表 int[] arrays = {1,2,3,4,5}; for (int array : arrays) { System.out.println(array); } } }数组作为参数入方法、数组作为方法返回值
package Using; public class Demo_3 { public static void main(String[] args) { int[] arrays = {1,2,3,4,5,6}; //数组作为参数入方法 printArray(arrays); System.out.println("n"+"========================"); //数组作为返回值 printArray(reverse2(arrays));//这个方法新创建了一个反转的数组,原来的数组没变化 System.out.println("n"+"========================"); printArray(reverse1(arrays));//这个方法把原来的数组反转了 System.out.println("n"+"========================"); printArray(arrays);//这里会输出反转数组 } //打印数组元素 public static void printArray(int[] arrays){ for (int array : arrays) { System.out.print(array + "t"); } } //反转数组 public static int[] reverse1(int[] arrays){ for (int i = 0; i < arrays.length / 2; i++) { int x = arrays[i]; arrays[i] = arrays[arrays.length - 1 - i]; arrays[arrays.length - 1 - i] = x; } return arrays; } //或者 public static int[] reverse2(int[] arrays){ int[] result = new int[arrays.length]; for (int i = 0,j = result.length - 1; i < arrays.length; i++,j--) { result[j] = arrays[i]; } return result; } }二维数组
自制图片有亿点丑哈。。。。。。
package DoubleDimensionalArray; public class Demo_1 { public static void main(String[] args) { int[][] arrays = {{1,2,3},{2,3,4},{3,4,5},{6,7,8}}; //或者 int[][] arrays = new int[4][3]; printSingleArray(arrays[0]);//这里是arrays[0]数组,是一个对象 System.out.println(); System.out.println(arrays[0][0]);//这里是arrays[0]数组中的第一个元素 System.out.println("========================="); printDimensionalArray1(arrays); System.out.println("========================="); printDimensionalArray2(arrays); System.out.println("========================="); printDimensionalArray3(arrays); } //打印一维数组 public static void printSingleArray(int[] arrays){ for (int array : arrays) { System.out.print(array + "t"); } } //打印二维数组 public static void printDimensionalArray1(int[][] arrays){ for (int[] array : arrays) { printSingleArray(array);//调用打印一维数组这个方法 System.out.println();//记得回车 } } //或者不调用 public static void printDimensionalArray2(int[][] arrays){ for (int[] array : arrays) { for (int i : array) { System.out.print(i + "t"); } System.out.println(); } } //或者更好理解 public static void printDimensionalArray3(int[][] arrays){ for (int i = 0; i < arrays.length; i++) { for (int j = 0; j< arrays[i].length; j++) { System.out.print(arrays[i][j] + "t"); } System.out.println(); } } }
看冬奥会开幕式去了,二维数组明天继续
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)