采用递归从头处理
或者是采用stack从尾部处理。
public class test {
public String parseTenary(String expression){
if(expression.length() == 1){
return expression;
}
int index = 1;
int count = 0;
while(index < expression.length()){
if(expression.charAt(index) == '?'){
count++;
}else if(expression.charAt(index) == ':'){
count--;
}
if(count == 0){
if(expression.charAt(0) == 'T'){
return parseTenary(expression.substring(2, index));
}else{
return parseTenary(expression.substring(index+1));
}
}
index++;
}
return "";
}
}