2022年2月4日

2022年2月4日,第1张

2022年2月4日 数组的基本特点
    数组一旦被创建,大小时不可以改变的。数组的元素可以时任何数据类型,包括基本类型和引用类型数组变量属于引用类型,数组也可以看成对象,数组中每个元素相当于该对象的成员变量。数组本身就是对象,Java中的对象都是在堆中的,因此数组无论保存原始类型还是其他对象来行,数组对象本身时在堆中的
数组的使用 普通for循环
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();
        }
    }
}

看冬奥会开幕式去了,二维数组明天继续

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5721808.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-18

发表评论

登录后才能评论

评论列表(0条)

保存