哪些测试导致我对string-3(“ SameEnds”)的“编码蝙蝠”答案失败?

时间:2019-04-26 03:45:58

标签: java

我正在codingbat上处理String-3中的SameEnds问题,但我不明白为什么它总是在“其他测试”部分中失败。其他所有测试均有效。

例如,在我的程序上: sameEnds(“ javaXYZjava”)→“ java”

sameEnds(“ Hello!and Hello!”)→“ Hello!”

sameEnds(“ x”)→“”

sameEnds(“ xxx”)→“ x”

sameEnds(“ xxxx”)→“ xx”

public String sameEnds(String string) {
  if(string.length()%2 != 0){
     int mid2 = string.length() / 2; 
     string  = string.substring(0, mid2) +" " +string.substring(mid2); 
  } 
  String front  = "";
  for(int i =0;i<string.length();i++){
     int mid = string.length() / 2; 
     String[] parts = {string.substring(0, mid),string.substring(mid)};
     if(parts[0].equals(parts[1])){
        front = parts[0]; 
     } 
     else{
        string  = string.substring(0, mid-1) + string.substring(mid+1); 
     }

  }
  return front;
}

edit:我解决了!原来,当我应该有一个while循环时,我无缘无故地在字符串中循环。

0 个答案:

没有答案