Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/320.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 是否尝试使用2D数组和用户输入来设置大小来创建单词搜索?_Java_Multidimensional Array - Fatal编程技术网

Java 是否尝试使用2D数组和用户输入来设置大小来创建单词搜索?

Java 是否尝试使用2D数组和用户输入来设置大小来创建单词搜索?,java,multidimensional-array,Java,Multidimensional Array,我试图让用户输入单词搜索拼图的大小,但每当我运行该程序时,我就会得到数组越界错误。例如,假设我输入10,那么谜题将是10乘10个单词的搜索。我对编程相当陌生,希望使用对象和实例变量来创建它 import java.util.Scanner; public class Puzzle { private char [][] myPuzzle;// creating my object public static void main(String[] args) { Puzzl

我试图让用户输入单词搜索拼图的大小,但每当我运行该程序时,我就会得到数组越界错误。例如,假设我输入10,那么谜题将是10乘10个单词的搜索。我对编程相当陌生,希望使用对象和实例变量来创建它

import java.util.Scanner;

public class Puzzle {


private char [][] myPuzzle;// creating my object



 public static void main(String[] args) {
     Puzzle myPuzzle = new Puzzle(); // creating an instance of my puzzle object
     myPuzzle.puzzleSize();

 }

 public char[][] puzzleSize(){
     Scanner keyboard = new Scanner(System.in);
     System.out.println("Hi, What would you like your puzzle size to be?");
     int puzzleSize = keyboard.nextInt();    
     int row = puzzleSize;
     int col = puzzleSize;
     char[][] puzzle= new char [row][col];

      for(int i=0;i<puzzle.length;row++){ // creating the puzzle size

        for(int o=0;o<puzzle.length;col++){
            System.out.print(puzzle[row][col]);
        }
        System.out.println("");
    }

     return puzzle;
  }
}
import java.util.Scanner;
公共类难题{
private char[][]myPuzzle;//创建我的对象
公共静态void main(字符串[]args){
Puzzle myPuzzle=新建Puzzle();//创建我的Puzzle对象的实例
myPuzzle.puzzleSize();
}
公共字符[][]拼图大小(){
扫描仪键盘=新扫描仪(System.in);
System.out.println(“嗨,你希望你的拼图大小是多少?”);
int puzzleSize=keyboard.nextInt();
int行=字谜大小;
int col=字谜大小;
字符[][]拼图=新字符[行][col];

对于(int i=0;i
System.out.print(拼图[row][col]);
应替换为
System.out.print(拼图[i][o]);
System.out.print(拼图[row][col]);
应替换为
System.out.print(拼图[i][o]);
尝试更改此行

for(int i=0;i<puzzle.length;row++){
    for(int o=0;o<puzzle.length;col++){
        // iterate column
        System.out.print(puzzle[row][col]);

for(int i=0;i尝试更改此行

for(int i=0;i<puzzle.length;row++){
    for(int o=0;o<puzzle.length;col++){
        // iterate column
        System.out.print(puzzle[row][col]);
for(int i=0;i
而不是使用行和列,它们仅在创建数组时用于指示数组大小

还请记住,为行和列分配两个额外的整数是多余的,因为您已经为所需的值分配了puzzleSize:

char[][] puzzle = new char[puzzleSize][puzzleSize]
希望这有帮助

而不是使用行和列,它们仅在创建数组时用于指示数组大小

还请记住,为行和列分配两个额外的整数是多余的,因为您已经为所需的值分配了puzzleSize:

char[][] puzzle = new char[puzzleSize][puzzleSize]

希望这有帮助。

欢迎使用SO。请访问以获取此处问题所需的最低信息。您必须包含完整的堆栈跟踪,标识代码中引发异常的行,并显示导致异常的输入(如果适用)。欢迎使用SO。请访问以获取此处问题所需的最低信息。您必须包含完整的堆栈跟踪,标识代码中引发异常的行,并显示导致异常的输入(如果适用)。对问题和你的解决方案的解释会很有帮助。对问题和你的解决方案的解释会很有帮助。谢谢,那帮了大忙。谢谢,那帮了大忙
for(int i=0;i<puzzle.length;i++){
for(int o=0;o<puzzle[i].length;o++){
System.out.print(puzzle[i][o]);
char[][] puzzle = new char[puzzleSize][puzzleSize]