String s="true&&false||flase||true";
boolean p=true;
String[] t=null;
String[] t2=null;
if(s.contains("||")&&s.contains("&&")){
t=s.split("||");
for(int i=0;i<t.length;i++){
if(t[i].contains("&&")){
t2=t[i].split("&&");
for (int j = 0; j < t2.length; j++) {
if(t2[j].contains("false")){
p=false;
break;
}
}
}else{
if(t[i].contains("true")){
p=true;
break;
}
}
}
}else {
if(s.contains("&&")){
t=s.split("&&");
for(int i=0;i<t.length;i++){
if(t[i].contains("false")){//和语句有flase就false了;
p=false;
break;
}
}
}
if(s.contains("||")){
t=s.split("||");
for(int i=0;i<t.length;i++){
if(t[i].contains("true")){//或语句有true就是TRUE了
p=true;
break;
}
}
}
}
System.out.print(p);
字符串是只有TRUE和flase咯。你要是有其他字符,那估计还要考虑更多的东西