Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/306.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数组的数独游戏_Java_Arrays_List_Sorting_Object - Fatal编程技术网

插入整数作为元素 带有Java数组的数独游戏

插入整数作为元素 带有Java数组的数独游戏,java,arrays,list,sorting,object,Java,Arrays,List,Sorting,Object,我正在构建一个9x92D数组,并尝试通过为每行输入一个随机的9位整数来填充它。我想在[0][0-8]、[1][0-8]行中插入该数字的每个数字作为元素。。。我试图将整数转换成字符串并插入每个字符,但似乎无法理解 System.out.println("Please insert 9 lines of 9 digits (1-9)"); int Choise = scan.nextInt(); char c =(char)Choise; int soduko[][] = ne

我正在构建一个9x92D数组,并尝试通过为每行输入一个随机的9位整数来填充它。我想在[0][0-8]、[1][0-8]行中插入该数字的每个数字作为元素。。。我试图将整数转换成字符串并插入每个字符,但似乎无法理解

System.out.println("Please insert 9 lines of 9 digits (1-9)");

int Choise = scan.nextInt();
char c =(char)Choise;
int soduko[][] = new int[9][9];

for (int i = 0; i< soduko.length; i++){
    for(int j =0; j< soduko.length; j++){
        soduko[i][j]=c;
    }
}
System.out.println(“请插入9行9位数字(1-9)”;
int Choise=scan.nextInt();
char c=(char)Choise;
int soduko[][]=新int[9][9];
对于(int i=0;i
我尝试了另一种仍然使用数字作为int的方法,将该数字的剩余部分移到行中的最后一个单元格,并在循环中每次将该数字除以10。虽然当我试图除以10得到下一个余数时,它不起作用

System.out.println("Please insert 9 lines of 9 digits (1-9)");
Choise = scan.nextInt();

for (int i =0; i <= soduko.length -1; i++){
        for(int j = soduko.length -1; j > 0; j--){
                int ChoiseDigit = Choise % 10;
                soduko[0][j] = ChoiseDigit;
                Choise = (int)(Choise / 10);

    }
}
System.out.println(“请插入9行9位数字(1-9)”;
Choise=scan.nextInt();
对于(int i=0;i 0;j--){
int ChoiseDigit=选择%10;
soduko[0][j]=精选数字;
Choise=(int)(Choise/10);
}
}

基于您的字符串转换思想,您可能会受益于使用split()方法,该方法基于作为参数传递的字符串拆分字符串,然后返回拆分字符串的数组。因此,当您拆分(“”)时,字符串将拆分为单个字符。然后您可以解析int将每个字符串转换为int。我还建议将扫描仪输入放入循环中,以确保用户必须输入9次字符串

System.out.println("Please insert 9 lines of 9 digits (1-9)");
    int soduko[][] = new int[9][9];
    for (int i = 0; i< soduko.length; i++){
        //reading a string of input 9 times and splitting them by "" into 1-character strings
        String Choise[] = scan.nextLine().split("");
        for(int j =0; j< soduko[i].length; j++){
            //Integer.parseInt converts each string to an int so we can save it to the 2d array
            soduko[i][j]= Integer.parseInt(Choise[j]);
        }
    }
System.out.println(“请插入9行9位数字(1-9)”;
int soduko[][]=新int[9][9];
对于(int i=0;i
基于您的字符串转换思想,您可能会受益于使用split()方法,该方法基于作为参数传递的字符串拆分字符串,然后返回拆分字符串的数组。因此,当您拆分(“”)时,字符串将拆分为单个字符。然后您可以解析int将每个字符串转换为int。我还建议将扫描仪输入放入循环中,以确保用户必须输入9次字符串

System.out.println("Please insert 9 lines of 9 digits (1-9)");
    int soduko[][] = new int[9][9];
    for (int i = 0; i< soduko.length; i++){
        //reading a string of input 9 times and splitting them by "" into 1-character strings
        String Choise[] = scan.nextLine().split("");
        for(int j =0; j< soduko[i].length; j++){
            //Integer.parseInt converts each string to an int so we can save it to the 2d array
            soduko[i][j]= Integer.parseInt(Choise[j]);
        }
    }
System.out.println(“请插入9行9位数字(1-9)”;
int soduko[][]=新int[9][9];
对于(int i=0;i
请发布您尝试过的内容。不要考虑将9位随机数的每个数字分配给一行的单元格,将随机一位数字分配给2D网格的每个单元格可能更容易思考。请发布您的尝试。与其将9位随机数字的每个数字分配给一行单元格,不如将随机一位数字分配给2D网格的每个单元格。