请稍后阅读,章节错误
002
003
;
004
;
005
;
006
;
007
;
008
009
publicclassReportUtil{
010
011
/**
012
*格式化日期
013
*@paramobj日期对象
014
*@paramformat格式化字符串
015
*@return
016
*/
017
publicstaticStringformatDateObjectobj,Stringformat{
018
ifobj==null
019
return““;
020
021
Strings=obj;
022
ifformat==null||““.equals{
023
format=“yyyy-MM-dd“;
024
}
025
try{
026
SimpleDateFormatdateFormat=newSimpleDateFormatformat;
027
s=obj;
028
}catchExceptione{
029
}
030
returns;
031
}
032
033
/**
034
*格式化数字
035
*@paramobj数字对象
036
*@paramformat格式化字符串
037
*@return
038
*/
039
publicstaticStringformatNumberObjectobj,Stringformat{
040
ifobj==null
041
return““;
042
043
Strings=obj;
044
ifformat==null||““.equals{
045
format=“#.00“;
046
}
047
try{
048
ifobjinstanceofDouble||objinstanceofFloat{
049
if“%“{
050
NumberFormatnumberFormat=;
051
s=obj;
052
}else{
053
DecimalFormatdecimalFormat=newDecimalFormatformat;
054
s=obj;
055
}
056
}else{
057
NumberFormatnumberFormat=;
058
s=obj;
059
}
060
}catchExceptione{
061
}
062
returns;
063
}
064
065
/**
066
*计算字符串四则运算表达式
067
*@paramstring
068
*@return
069
*/
070
publicstaticStringputeStringStringstring{
071
StringregexCheck=“[\\\\\\d\\+\\-\\*/\\.]*“;//是否是合法的表达式
072
073
if!regexCheck,string
074
returnstring;
075
076
Matchermatcher=null;
077
Stringtemp=““;
078
intindex=-1;
079
Stringregex=“\\[\\d\\.\\+\\-\\*/]+\\“;//提取括号表达式
080
string=“\\s“,““;//去除空格
081
try{
082
Patternpattern=regex;
083
//循环计算所有括号里的表达式
084
whilestring.find{
085
matcher=string;
086
while{
087
temp=;
088
index=temp;
089
string=0,index
090
+puteStirngNoBrackettemp
091
+index+;
092
}
093
}
094
//最后计算总的表达式结果
095
string=puteStirngNoBracketstring;
096
}catchNumberFormatExceptione{
097
;
未完待续。