JavaDay5

2020-09-23  本文已影响0人  __method__

数组的遍历和长度属性

package com.example.day05;

import java.util.Arrays;

/**
 * @author Eric Lee
 * @date 2020/9/23 11:04
 */
public class ArrayDemo2 {
    public static void main(String[] args) {
        int[] arr = new int[5];
        arr[0] = 1;
        arr[1] = 3;
        arr[2] = 5;
        System.out.println(Arrays.toString(arr));
        System.out.println(arr); // 直接输出数组返回的是他的地址值[I@1b6d3586
        System.out.println("++++++++++++++++++++++|");
        // 数组遍历 一个一个的取出
//        System.out.println(arr[0]);
//        System.out.println(arr[1]);
//        System.out.println(arr[2]);
        // 数组的length属性
        System.out.println("length属性"+arr.length);

//        for (int i = 0; i <arr.length ; i++) {
//            System.out.println("i= "+i);
//            System.out.println(arr[i]);
//        }
        for (int i = 0; i <arr.length ; i++) {
            System.out.println(arr[i]);
        }

    }
}

数组的内存图

两个数组的内存图

两个变量指向一个数组

数组越界异常

public class ArrayDemo4 {
    public static void main(String[] args) {
        int[] arr = {11, 22, 33, 44};
//        System.out.println(arr[4]); // ArrayIndexOutOfBoundsException
        int[] arr2 = {}; // .ArrayIndexOutOfBoundsException
        System.out.println(arr2[0]);

    }
}

数组的空指针异常

public class ArrayDemo5 {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3};
        arr = null; // 空值  不保存数组的地址
        System.out.println(arr[0]);// NullPointerException

    }
}

获取数组中最大的元素

public class ArrayDemo6 {
    public static void main(String[] args) {
        int[] arr = new int[]{2, 333233, 4444, 44433, 432};
        // 定义一个max变量,存储最大值
        int max = arr[0];
        //遍历数组
        for (int i = 0; i < arr.length; i++) {
            if (arr[i] > max){
                // 更新max的值
                max = arr[i];
            }
        }
        System.out.println("最大值是"+max);
    }
}

数组的反转

package com.example.day05;

import java.util.Arrays;

/**
 * @author Eric Lee
 * @date 2020/9/23 12:15
 */
public class ArrayDemo7 {
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5, 6, 7}; // 54321
//
//        for (初始表达式; 布尔表达式 ; 步进表达式) {
//
//        }
//        for (int i= 0, j=100 ; i < 100; i++, j++){
//
//        }
        for (int min =0, max=arr.length-1; min <= max; min++,max-- ){
                // 交换min和max索引对应 的值
             int temp = arr[min];
             arr[min] = arr[max];
             arr[max] = temp;

        }

        System.out.println(Arrays.toString(arr));


    }
}

数组作为方法的参数

package com.example.day05;

/**
 * @author Eric Lee
 * @date 2020/9/23 12:38
 */
public class ArrayDemo8 {
    // 数组作为方法的参数
    public static void main(String[] args) {
        int[] arr = {1, 2, 3, 4, 5, 6};
        getArraySum(arr);
    }

    // 数组作为方法的参数  String name  int[]
    public static void getArraySum(int[] arr){
        int sum = 0;
        for (int i = 0; i < arr.length; i++) {
            sum += arr[i];
        }
        System.out.println(sum);
    }

    public static void getSum(int x, int y){
        System.out.println(x+y);
    }

}

数组作为方法的返回值

package com.example.day05;

import java.util.Arrays;

/**
 * @author Eric Lee
 * @date 2020/9/23 12:49
 */
public class ArrayDemo9 {
    public static void main(String[] args) {
        int sum = getSum(10, 23, 22);
        System.out.println(sum);
        int[] arr = {1, 3, 5, 7, 9};
        int[] arrayPower = ArrayPower(arr);
        System.out.println(Arrays.toString(arrayPower));
    }
    public static int[] ArrayPower(int[] arr){
        int[] powerArr = new int[arr.length];
        for (int i = 0; i < arr.length; i++) {
           int val =  arr[i]*arr[i];
           powerArr[i] = val;
        }
        return powerArr;

    }
    public static int getSum(int x , int y, int z){
        return x+y+z;
    }
}

上一篇下一篇

猜你喜欢

热点阅读