我在获取返回任何内容的方法时遇到问题。该代码应该获取一个字符串,按单词反转字符串,然后返回新字符串。这是一个学校作业,我试图避免使用 stringbuilder,因为它没有被文本覆盖。出于明显的原因,我还尝试尽可能多地使用我理解的语法。public static String reverseByWord(String s){ String forward[] = s.split("\\s+"); String backward = new String(); for (int i=forward.length-1; i< forward.length-1; i--){ backward += forward[i]; } return backward;输入示例:“The quick brown fox” 预期输出:“fox brown quick The” 输出:无
2 回答
当年话下
TA贡献1890条经验 获得超9个赞
您的for 循环条件不正确。您的逻辑应该是从最后一个字符串长度到字符串开头,即 0。
for (int i=forward.length-1; i >= 0; i--){ backward += forward[i]; }
繁花如伊
TA贡献2012条经验 获得超12个赞
for (int i=forward.length-1; i< forward.length-1; i--){ backward += forward[i]; }
这条线,int i = forward.length-1; i < forward.length-1
您将 i 设置为forward.length - 1
,然后您立即告诉 for 循环它应该仅在 i 小于时才执行forward.length - 1
一个非常简单的解决方案,只需将条件设置为i >= 0
添加回答
举报
0/150
提交
取消