如何从相同的java方法返回两个multidimetional数组?

use*_*127 4 java return matrix

我想知道如何从同一个方法返回两个多维数组:

public static arraysReturn() {
    int [][] A={{1,2},{2,3},{4,5}};
    int [][] B={{1,2},{2,3},{4,5}};
    return A,B;
}
Run Code Online (Sandbox Code Playgroud)

Pok*_*u22 6

Java不支持一次返回多个东西.

但是,您可以创建一个执行此操作的小类:

public class TwoArrays {
    public final int[][] A;
    public final int[][] B;
    public TwoArrays(int[][] A, int[][] B) {
        this.A = A;
        this.B = B;
    }
}
Run Code Online (Sandbox Code Playgroud)

然后像这样制作你的方法:

public static TwoArrays arraysreturn() {
    int [][] A={{1,2},{2,3},{4,5}};
    int [][] B={{1,2},{2,3},{4,5}};
    return new TwoArrays(A,B);
}
Run Code Online (Sandbox Code Playgroud)

要访问值:

TwoArrays arrays = arraysreturn();
System.out.println(Arrays.toString(arrays.A)); //Due to the way java prints arrays, this is needed, but it isn't a requirement for doing other stuff with the array.
System.out.println(Arrays.toString(arrays.B)); 
Run Code Online (Sandbox Code Playgroud)


JRs*_*Rsz 5

创建一个包含两个数组的数组.在你的情况下

int[2][][] = {
    {{1,2},{2,3},{4,5}}, 
    {{1,2},{2,3},{4,5}}
};
Run Code Online (Sandbox Code Playgroud)

或者更好的是,创建一个包含两个数组的对象.