我遇到了关于codingbat的问题,问题是:
给定一个字符串,返回一个由原始字符串的最后2个字符的3个副本组成的新字符串。字符串长度至少为2。 我解决了问题并且解决方案(下面)比我的更好,但是,解决方案代码存在问题,当字符串长度小于2时,假设长度仅为1. str索引将为-1。代码仍然有用吗?为什么网站说解决方案是正确的?
public String extraEnd(String str) {
String end = str.substring(str.length()-2);
return end + end + end;
答案 0 :(得分:0)
该网站将尝试尽可能多的测试,以确保它几乎没有错误,但有些确实没有漏洞,并做出例外。下面的代码是一个适用于所有测试的代码,如果你想给它一个去;
public String extraFront(String str) {
if (str.length() <= 2)
return str+str+str;
return str.substring(0,2)+str.substring(0,2)+str.substring(0,2);
}
您似乎正确使用代码,索引将为-1。也许跟进它对String 2的挑战,它会派上用场。祝你好运!