繁体   English   中英

将二维数组放入另一个二维数组java中

[英]Put a 2-d array in another 2-d array java

我无法弄清楚如何将一个二维阵列放入另一个二维阵列。

public class MazeAnalyze{
public static void main(String[]args){
Scanner kbd = new Scanner(System.in); 
  String str = ""; 
  System.out.println("Enter dimensions"); 
  int n = kbd.nextInt(); 
  char [][] mazeValue = new char[n][n];
  char[][] newMaze = new char[n+2][n+2]; 
  String [] input= new String [n]; 
  int [][] totalOpen = new int [n][n];
  char X= 88;
  System.out.println("Enter the maze"); 
  for(int i =0; i <input.length; i++){ 
   input[i] = kbd.next().toUpperCase();  
  }
  for(int x=0; x< input.length;x++){
  mazeValue[x]= input[x].toCharArray(); 
  }
  System.out.println("The maze array contains:"); 
  for(int i=0; i<mazeValue.length; i++){
   for(int j=0; j<mazeValue[i].length;j++){
     System.out.print(mazeValue[i][j]);
  }//end of second loop 
  System.out.println(); 
  }//end of first loop  
System.out.println("The maze with the Xs are"); 
for(int i=0; i<newMaze.length; i++){
   for(int j=0; j<newMaze[i].length;j++){
     newMaze[i][j]= 'X';   
  }//end of second loop 
 }//end of first loop
for(int i=0; i<newMaze.length; i++){
   for(int j=0; j<newMaze[i].length;j++){
      System.out.print(newMaze[i][j]);
  }
System.out.println(); 
}
for(int x=0; x<n-2; x++){
    for(int i=0; i<mazeValue.length; i++){
   for(int j=0; j<mazeValue[i].length;j++){
        newMaze[i+1][j+1]= mazeValue[i][j]; 
      }
    }
  }//end of main for loop 

这是我的输出:

输入尺寸3输入迷宫

XOX

白叶枯病

OOO

迷宫阵列包含:

XOX

XOO

OOO

与Xs的迷宫是

XXXXX

XXXXX

XXXXX

XXXXX

XXXXX

带边框的迷宫是

XOX

XOO

OOO

我想要的是:

我的迷宫阵列被X包围,就像一个边界。 有什么建议么?

在你的情况下最简单的方法似乎是使用字符串concat并添加"X"和每行的开头和结尾,另外添加2行input - 一个在开始,一个在结尾,所有只包含“XXX”。 ..X”。

注意:使用ArrayList<String>LinkedList<String>进行input而不是String[]可能更容易 - 在开头和结尾添加元素会更容易。

暂无
暂无

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

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