java中用于打印的对象传递2d数组

hrysbysz  于 2021-07-03  发布在  Java
关注(0)|答案(1)|浏览(334)

嗨,我是java新手,你可以从代码中看到。我希望它在一个方法中填充一个数组,然后在第二个方法中显示该数组。

public class Rulebase {

    String[][] array()
    {
        String[][] table = new String[3][4];
        table[0][0]="1";
        table[0][1]="person(?x),patientid(?y),hasid(?x,?y)";
        table[0][2]="patient(?x)";
        table[0][3]="1";

        table[1][0]="1";
        table[1][1]="patient(?x),hasbp(?x,high)";
        table[1][2]="hassituation(?x,emergency)";
        table[1][3]="1";

        table[2][0]="1";
        table[2][1]="hassituation(?x,emergency)";
        table[2][2]="calldr(emergency)";
        table[2][3]="1"; 
        return table;

    }
    void showarray(String[][] table)
    {
    for(int i=0;i<4;i++)
        for(int j=0;j<4;j++)
        {
            System.out.println(table[i][j]);
        }
    }
    public static void main(String[] args) {
        Rulebase rb = new Rulebase();
        rb.array();
        rb.showarray();
        // TODO code application logic here

    }

}

请提供建议。

qjp7pelc

qjp7pelc1#

array() 正在返回数组,但您没有将其存储在任何位置 showarray() 需要 String [][] 但你什么都没通过。

String[][] temp= rb.array();
rb.showarray(temp);

顺便说一句,在 showarray() 当您的数组是3x4时,您正在硬编码数组维度(4x4) length 相反。

for (int i = 0; i < table.length; i++)
            for (int j = 0; j < table[i].length; j++) {
                System.out.println(table[i][j]);
            }

相关问题