将字符串追加到2d数组Java中
我有一个包含以下内容的字符串:将字符串追加到2d数组Java中,java,Java,我有一个包含以下内容的字符串: String text = "abcdefghijkl" 我想把它放在一个2d数组中,这样会有4行3行 这是我目前拥有的,但它不能正常工作: char boxChar[][] = new char[4][3]; int j,i; for (i = 0; i<4; i++) { for (j=0; j<3; j++) {
String text = "abcdefghijkl"
我想把它放在一个2d数组中,这样会有4行3行
这是我目前拥有的,但它不能正常工作:
char boxChar[][] = new char[4][3];
int j,i;
for (i = 0; i<4; i++)
{
for (j=0; j<3; j++)
{
boxChar[i][j] = text.charAt((i+1)*(j));
}
}
return boxChar[row][col];
char-boxChar[][]=新字符[4][3];
int j,i;
对于(i=0;i,看起来您的索引弄混了。我在原始代码中添加了一些print语句,并进行了修改,以便在charAt
指令中获得正确的字符
String text = "abcdefghijkl";
char boxChar[][] = new char[4][3];
int j,i;
for (i = 0; i<4; i++)
{
for (j=0; j<3; j++)
{
boxChar[i][j] = text.charAt(i*3+j);
System.out.print(boxChar[i][j]);
}
System.out.println();
}
在循环获取长方体数组(矩阵)时,外部循环表示需要四行三列,换句话说
a b c
d e f
g h i
j k l
所以对于第一个元素,a
,它的位置是(0,0)
,b
位于(0,1)
,依此类推
必须将2d位置映射到相应的1d位置。看起来索引弄混了。我在原始代码中添加了一些打印语句,并进行了修改,以便在字符
指令中获得正确的字符
String text = "abcdefghijkl";
char boxChar[][] = new char[4][3];
int j,i;
for (i = 0; i<4; i++)
{
for (j=0; j<3; j++)
{
boxChar[i][j] = text.charAt(i*3+j);
System.out.print(boxChar[i][j]);
}
System.out.println();
}
在循环获取长方体数组(矩阵)时,外部循环表示需要四行三列,换句话说
a b c
d e f
g h i
j k l
因此,对于第一个元素,
a
,它的位置是(0,0)
,b
在(0,1)
等等。你的字符(位置)
必须将2d位置映射到它们对应的1d位置。只是索引错误,否则你很好:
String text = "abcdefghijkl";
int rows = 4;
int cols = 3;
char boxChar[][] = new char[rows][cols];
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
boxChar[i][j] = text.charAt((i * cols) + j);
}
}
//return boxChar[row][col];
System.out.println(boxChar[0]);
System.out.println(boxChar[1]);
System.out.println(boxChar[2]);
System.out.println(boxChar[3]);
String text=“abcdefghijkl”;
int行=4;
int cols=3;
char-boxChar[][]=新字符[行][cols];
对于(int i=0;i
只是索引错误,否则您就很好了:
String text = "abcdefghijkl";
int rows = 4;
int cols = 3;
char boxChar[][] = new char[rows][cols];
for (int i = 0; i < rows; i++) {
for (int j = 0; j < cols; j++) {
boxChar[i][j] = text.charAt((i * cols) + j);
}
}
//return boxChar[row][col];
System.out.println(boxChar[0]);
System.out.println(boxChar[1]);
System.out.println(boxChar[2]);
System.out.println(boxChar[3]);
String text=“abcdefghijkl”;
int行=4;
int cols=3;
char-boxChar[][]=新字符[行][cols];
对于(int i=0;i
为什么不能正常工作?到底出了什么问题?写下您希望字符串中的每个索引映射到的索引。从那里开始编写代码应该很容易。复制为什么不能正常工作?到底出了什么问题?写下您希望字符串中的每个索引映射到的索引。应该从那里开始要非常容易编写代码。重复的