如何在 Java 中返回数组

在 Java 中,方法可以返回各种数据类型,包括整数、字符串、对象等等。但有时候我们需要返回一个数组,那么该如何实现呢?

返回一维数组

一维数组是最简单的数组类型,返回一维数组的方法也比较简单。例如,下面的方法可以返回一个包含 5 个整数的数组:

public int[] getArray() {
    int[] arr = new int[5];
    for (int i = 0; i < arr.length; i++) {
        arr[i] = i + 1;
    }
    return arr;
}

在上面的方法中,首先创建了一个长度为 5 的 int 类型数组 arr,然后使用循环为数组中的每个元素赋值。最后使用 return 关键字返回数组 arr。

如果想要获取返回的数组,可以将其保存到一个变量中,例如:

int[] myArray = getArray();

此时,变量 myArray 中保存的就是包含了 1 到 5 的整数的数组。

注意事项:

  • 在返回数组之前,必须先创建一个数组。
  • 不能直接在返回语句中使用数组字面量(如 return {1,2,3}),因为这样会被解释为返回一个匿名数组,而不是 getArray() 方法中创建的数组。

返回多维数组

在 Java 中,多维数组是由多个一维数组组成的。因此,在返回多维数组时,需要将各个一维数组连接起来,并将它们封装成一个数组对象。下面是一个返回二维数组的示例:

public int[][] get2DArray() {
    int[][] arr = new int[2][3];
    for (int i = 0; i < arr.length; i++) {
        for (int j = 0; j < arr[i].length; j++) {
            arr[i][j] = i + j;
        }
    }
    return arr;
}

上面的方法创建一个二维数组,包含两个一维数组,每个一维数组包含三个元素。使用两个嵌套循环,为数组中的每个元素赋值。最后使用 return 关键字返回数组 arr。

要获取该方法返回的数组,可以使用以下代码:

int[][] myArray = get2DArray();

此时,变量 myArray 中保存的就是一个包含了 0 到 4 的整数的二维数组。

注意事项:

  • 在返回多维数组之前,必须先创建一个多维数组,并且将其中的每个一维数组也都创建出来。

总结

在 Java 中,返回数组是很常见的需求。对于一维数组,使用方法内部创建并返回即可;对于多维数组,需要分别创建出每个一维数组,并将它们组合成一个多维数组对象。在编写代码时,需要特别注意在返回语句中不要使用数组字面量,因为这样会导致程序无法正常工作。