116、骂战(2/3)
052
}else{
053
&nrmatdecimalFormatnewDecimalFormat(format);
054
&nrmat.format(obj);
055
}
056
}else{
057
&netInstance();
058
&nrmat.format(obj);
059
}
060
&nne){
061
}
062
returns;
063
}
064
065
/**
066
*计算字符串四则运算表达式
067
&n
068
*@return
069
*/
070
publicstaticStrinputeString(Stringstring){
071
&nregexCheck“\\(\\)\\d\\+\\-\\*/\\.*“;//是否是合法的表达式
072
073
if(!Pattern.matches(regexCheck,string))
074
&n;
075
076
Matchermatchernull;
077
&ntemp““;
078
intindex-1;
079
&nregex“\\(\\d\\.\\+\\-\\*/+\\)“;//提取括号表达式
080
&nstring.receAll(“\\s“,““);//去除空格
081
try{
082
PatternpatternPatternpile(regex);
083
//循环计算所有括号里的表达式
084
while(pattern.matcher(string).find()){
085
matcherpattern.matcher(string);
086
while(matcher.find()){
087
&nup();
088
&n.indexOf(temp);
089
&nstring.su(0,index)
090
&nBracket(temp)
091
&n.su(index+temp.lenh());
092
}
093
}
094
//最后计算总的表达式结果
095
&n);
096
&nrmatExceptione){
本章未完,下一页继续