所有!我正在完成这些练习,并提出了一个看起来很简单的解决方案。但是我从编译器中得到了一些奇怪的行为。当然,还有其他解决方案,我可以轻松找到一个解决方案。但是,我真的很想知道导致这种现象的原因。我的策略是使用for循环遍历提供的字符串的副本。if语句检查以确保剩余至少三个字符,并传递该字符,然后按问题要求的顺序进行交换。问题出在最后,通过简单的方法删除了字符串的前三个字符:
变量= variable.substring(3);
编译器将引发“;预期的行号”错误。
完整代码如下。提前致谢!
public String oneTwo(String str) {
String answer = "";
String working = str;
for(int i = 0; i < str.length(); i += 3){
if(i + 3 > working.length()){break;}
answer += working.charAt(1);
answer += working.charAt(2);
answer += working.charAt(0);
working = working,substring(3);
}
return answer;
}
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。