我有一个字符数组[4][4],即单个字符。 'a' 并且我试图仅将数组的列存储到一个字符串中以与另一个字符串进行比较。但我遇到的问题是它不断将原始元素添加到字符串中。我下面的代码在数组中包含单词“car”和“trip”,并且想将它与包含这些单词的另一个字符串进行比较以使其为真。这是我的代码:
char[][] puzzle = {{'a', 'c', 'h' ,'t'},
{'v', 'a', 'x', 'r'},
{'x', 'r', 'e', 'i'},
{'c', 'q', 'i', 'p'}
};
for(int row=0; row<puzzle.length; row++)
{
String match = "";
String matchword ="";
for(int col=0; col<puzzle.length; col++)
{
match += puzzle[col][row];
System.out.print(match);
}
System.out.println();
}
输出到字符串如下: aavavxavxc ccacarcarq 嘻嘻嘻嘻 抖音
代替: AVXC 车 嘻嘻 旅行
如有任何帮助,我们将不胜感激。
最佳答案
问题是您在循环的每次迭代中都打印匹配项。
你应该只在循环结束时打印。
for(int col=0; col<puzzle.length; col++)
{
match += puzzle[col][row];
}
System.out.println(match);
当前匹配是
a
av
avx
avxc
但是由于您将它们全部打印在一行中,所以您得到了
aavavxavxc
关于java - 将 char 数组列存储到字符串中以进行比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16577570/