public String oneTwo(String str) {
int len = str.length();
for (int i = 0; i * 3 < len; i++)
if (len >= 3) {
return str = str.substring((i * 3) + 1, (i * 3) + 3) + str.substring((i * 3), (i * 3) + 1);
}
return str;
}
我需要字符串在所有情况下都能工作,它适用于三个字符以下的字符串。但它不会运行for循环,因此它不适用于大于3个字符的字符串。此外,三个字符以下的任何内容都保持不变并且未经编辑。这就是我到目前为止的例外情况:“to” - “to”,“tca” - “cat”,“tcagdo” - “cat”,“” - “”。
答案 0 :(得分:1)
如果我理解你的问题,那么答案应该是: -
public String oneTwo(String str) {
int len = str.length();
String result = "";
for (int i = 0; i * 3 < len-2; i++)
if (len >= 3) {
result = result + str.substring((i * 3) + 1, (i * 3) + 3) + str.substring((i * 3), (i * 3) + 1);
}
return result;
}