我开始学习使用Java。
我遇到了codingbat(http://codingbat.com/prob/p123384)的问题: 这是我的代码
public String frontBack(String str) {
if (str.length() > 1)
{
char first = str.charAt(0);
char last = str.charAt(str.length()-1);
String middle = str.substring(1,(str.length()-1));
return last + first + middle;
}
else
return str;
}
这是输出:
(我无法将图像设为新用户)
Expected: Run:
frontBack("code") → "eodc" "200od" X
frontBack("a") → "a" "a" OK
frontBack("ab") → "ba" "195" X
frontBack("abc") → "cba" "196b" X
frontBack("") → "" "" OK
frontBack("Chocolate") → "ehocolatC" "168hocolat" X
frontBack("aavJ") → "Java" "171av" X
frontBack("hello") → "oellh" "215ell" X
为什么我会得到所有这些花哨的数字?我的解决方案与codingbat ...
提供的解决方案非常相似答案 0 :(得分:0)
Java假设您要在char
上添加整数,然后附加您的字符串。
要强制进行字符串连接,可以使用StringBuilder,或类似:
return "" + last + first + middle;
或
return new String(last + first + middle);