gpt4 book ai didi

java - 从字符串创建二维数组

转载 作者:行者123 更新时间:2023-12-02 04:28:39 29 4
gpt4 key购买 nike

我正在尝试从字符串创建一个二维数组。但是当我尝试设置数组中元素的值时,我得到了一些奇怪的结果。 这里字符串 s = 120453678;

public int[][] create2D(String s){
int[][] puzzle = new int[3][3];
int a;

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

puzzle[i][j] = (int)s.charAt(i*3+j);
System.out.println(s.charAt(i*3+j));
System.out.println(i +" "+ j+" "+ puzzle[i][j]);
}
}

return puzzle;

}

我得到的输出是。不知道为什么是 49、50、51 等等

 1
0 0 49
2
0 1 50
3
0 2 51
4
1 0 52
5
1 1 53
0
1 2 48
6
2 0 54
7
2 1 55
8
2 2 56

最佳答案

您正在将字符转换为其 int 表示形式。这就是您得到此结果的原因。

puzzle[i][j] = (int)s.charAt(i*3+j);

ASCII表可以引用下面。可以看到49是字符“1”的ASCII值。

http://www.asciitable.com/

要修复您的代码,您可以使用

puzzle[i][j] = Character.getNumericValue(s.charAt(i*3+j));

关于java - 从字符串创建二维数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31823538/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com