简体   繁体   English

如何用此代码显示二维数组?

[英]How can I display my 2-d array with this code?

I am trying to make a 3x3 dimension(area of movements) using 2Dimensional array. 我正在尝试使用2Dimensional数组制作3x3尺寸(运动区域)。 My only problem is that as I run the program and chose left direction, the 3x3 dimension doesnt appear. 我唯一的问题是,当我运行程序并选择向左方向时,不会出现3x3尺寸。 It only shows 0. I wanna see the 3x3 dimension. 它只显示0。我想看到3x3尺寸。 What's the problem with my code? 我的代码有什么问题?

Scanner input = new Scanner(System.in); 扫描仪输入=新的Scanner(System.in);

    int[][]arr = {{0,0,0},{0,0,0},{0,0,0}};

    int turtle =1;

    for(int i=0;i<3;i++){
        for(int j=0;j<3;j++){

            System.out.println ("(1)Left(2)Right(3)Up(4)Down");
            int movement = input.nextInt();

            if(movement == 1){
                if(turtle==1){
                    turtle = 1;
                    System.out.println ("Cant move left");
                }
                if(turtle ==2){
                    arr[0][0] = 1;
                    turtle = 3;
                }
                if(turtle ==3){
                    arr[0][2] = 1;
                    turtle = 2;

                }
                if(turtle ==4){
                    System.out.println ("Cant move left");
                    turtle = 4;
                }
                if(turtle ==5){
                    arr[1][0] = 1;
                    turtle = 4;
                }
                if(turtle ==6){
                    arr[1][1] = 1;
                    turtle = 5;
                }
                if(turtle ==7){
                    System.out.println ("cant move left");
                    turtle = 7;
                }
                if(turtle ==8){
                    arr[2][0] = 1;
                    turtle = 7;
                }
                if(turtle ==9){
                    arr[2][1] = 1;
                    turtle = 8;
                }
            }

            System.out.printf ("%d",arr[i][j]);
        }
        System.out.println ();
    }

Try this. 尝试这个。

import java.util.Arrays;

for (int[] a : arr) {
  System.out.println(Arrays.toString(a);
}

The other way would be to do the following. 另一种方法是执行以下操作。


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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM