java 数组怎么传递

直接传递数组引用是传递数组的最简单方法。也可以通过传递其副本、使用 Arrays.copyOf() 创建副本、传递数组一部分或使用可变参数数组来传递数组。

Java 如何传递数组

直接传递数组引用

最简单的方法是直接传递数组的引用。当方法参数是数组类型时,实际传递的是指向该数组的引用:

public static void printArray(int[] arr) {
    for (int num : arr) {
        System.out.println(num);
    }
}

传递数组副本

为了避免意外修改原始数组,可以传递其副本:

public static void printArrayCopy(int[] arr) {
    int[] copy = new int[arr.length];
    for (int i = 0; i < arr.length; i++) {
        copy[i] = arr[i];
    }
    printArray(copy);
}

使用 Arrays.copyOf()

Java 提供 Arrays.copyOf() 方法,可以创建一个指定数组的副本。它比手动复制更简洁:

public static void printArrayCopy(int[] arr) {
    printArray(Arrays.copyOf(arr, arr.length));
}

传递数组的一部分

可以使用 Arrays.copyOfRange() 方法传递数组的一部分:

public static void printArrayPart(int[] arr, int startIndex, int endIndex) {
    printArray(Arrays.copyOfRange(arr, startIndex, endIndex));
}

传递可变参数数组

可变参数数组(又称可变参数列表)允许方法接收数量不定的参数,包括数组:

public static void printArray(int... numbers) {
    for (int num : numbers) {
        System.out.println(num);
    }
}