我的1979_116、骂战 首页

字体:      护眼 关灯

上一页 目录 下一章

   116、骂战 (第2/2页)

at(obj);

    052

    }else{

    053

    DecimalFormatdecimalFormat=newDecimalFormat(format);

    054

    s=decimalFormat.format(obj);

    055

    }

    056

    }else{

    057

    NumberFormatnumberFormat=NumberFormat.getInstance();

    058

    s=numberFormat.format(obj);

    059

    }

    060

    }catch(Exceptione){

    061

    }

    062

    returns;

    063

    }

    064

    065

    /**

    066

    *计算字符串四则运算表达式

    067

    *@paramstring

    068

    *@return

    069

    */

    070

    publicstaticStringcomputeString(Stringstring){

    071

    StringregexCheck=“[\\(\\)\\d\\ \\-\\*/\\.]*“;//是否是合法的表达式

    072

    073

    if(!Pattern.matches(regexCheck,string))

    074

    returnstring;

    075

    076

    Matchermatcher=null;

    077

    Stringtemp=““;

    078

    intindex=-1;

    079

    Stringregex=“\\([\\d\\.\\ \\-\\*/] \\)“;//提取括号表达式

    080

    string=string.replaceAll(“\\s“,““);//去除空格

    081

    try{

    082

    Patternpattern=Patternpile(regex);

    083

    //循环计算所有括号里的表达式

    084

    while(pattern.matcher(string).find()){

    085

    matcher=pattern.matcher(string);

    086

    while(matcher.find()){

    087

    temp=matcher.group();

    088

    index=string.indexOf(temp);

    089

    string=string.substring(0,index)

    090

     computeStirngNoBracket(temp)

    091

     string.substring(index temp.length());

    092

    }

    093

    }

    094

    //最后计算总的表达式结果

    095

    string=computeStirngNoBracket(string);

    096

    }catch(NumberFormatExceptione){

    097

    returne.getMessage();(未完待续。)

加入书签 我的书架

上一页 目录 下一章