鉴于包含一对括号的字符串的字符串索引,计算 递归制成仅括号及其 内容的一个新的字符串,所以“XYZ(ABC)123”产率“( ABC)”。 parenBit( “XYZ(ABC)123”)→ “(ABC)”获取绑定错误
parenBit( “×(你好)”)→ “(你好)”
parenBit( “(XY)1”)→ “(XY)”
boolean foundc = false;
boolean foundd = false;
public String parenBit(String str) {
char c = str.charAt(0);
char d = str.charAt(str.length() - 1);
if(c == '('){
foundc = true;
return parenBit(str.substring(0, str.length() - 1));
}
if(foundc == false){
return parenBit(str.substring(1, str.length() - 1));
}
if(d == ')'){
foundd = true;
str.substring(0, str.length() - 1);
}
if(foundd == false){
return str.substring(0, str.length() - 2);
}
return "";
}
为什么这个返回 “字符串索引超出范围:0” 的错误?
哪条线给你错误?你有没有通过调试器完成这一步? – bradimus
可以请你发布完整的stacktrace吗? – XtremeBaumer
为什么你不能获得'('char和'''char')的位置,然后返回它们之间的内容?看起来很奇怪,你是怎么做到的 –