Java 如何调试,错误的输出?

Java 如何调试,错误的输出?,java,debugging,Java,Debugging,在测试代码之后,我发现了一个我不知道如何修复的bug。 当我用String parameter=“asd fgh”启动这段代码时,我看到的输出是“hgf”,而不是“hgf dsa” 公共字符串反转记录(字符串输入){ 字符串oneOrMoreSpaces=“\\s+”; String[]words=input.split(一个或多个空格); 字符串completeAnagram=“”; for(int i=0;i

在测试代码之后,我发现了一个我不知道如何修复的bug。 当我用String parameter=“asd fgh”启动这段代码时,我看到的输出是“hgf”,而不是“hgf dsa”

公共字符串反转记录(字符串输入){
字符串oneOrMoreSpaces=“\\s+”;
String[]words=input.split(一个或多个空格);
字符串completeAnagram=“”;
for(int i=0;i
我看到,如果输入包含空格,则按

String[] words = input.split(oneOrMoreSpaces);
然后使用
for
循环遍历它们

每个单词都存储在
char[]symbol=words[i].tocharray()中

问题是
completeangram=新字符串(符号)

当你在每个单词中运行循环时,它只存储最近运行的单词;因此,当您运行最后一个循环时,它只保存分析的最后一个字

String[] words = input.split(oneOrMoreSpaces);