struts2标签内计算取小数点后两位
方法一
如果在前台jsp页面要显示 两位小数
可以
先在java文件 中定义一个方法
例如
format.class
public String formatDouble(double s) {
		DecimalFormat fmt = new DecimalFormat("##0.0");
		return fmt.format(s);
	} 
 format.jsp中引用这个方法即可 
<s:property value="%{formatDouble(#bean.selfRisk)}" /> 
方法二
 
<pre name="code" class="java"><%@ taglib uri="http://java.sun.com/jsp/jstl/fmt" prefix="fmt"%>
<fmt:formatNumber value="${值}" pattern="#0.00(格式)" />例如: <fmt:formatNumber value="${planEffort/3600 }" pattern="#0.00"/>这样就可以实现struts2标签计算并保留指定小数点的功能了. 
 
 
 
后台计算的五种方法
第一种
BigDecimal bg = new BigDecimal(f);
        double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
        System.out.println(f1); 
第二种
DecimalFormat df = new DecimalFormat("#.00");
        System.out.println(df.format(f)); 
第三种
System.out.println(String.format("%.2f", f)); 
第四种
NumberFormat nf = NumberFormat.getNumberInstance();
        nf.setMaximumFractionDigits(2);
        System.out.println(nf.format(f)); 
第五种
float price=89.89;
int itemNum=3;
float totalPrice=price*itemNum;
float num=(float)(Math.round(totalPrice*100)/100);//如果要求精确4位就*10000然后/10000 
例子
其中四种的例子:
import java.math.BigDecimal;
import java.text.DecimalFormat;
import java.text.NumberFormat;
public class format {
    double f = 111231.5585;
    public void m1() {
        BigDecimal bg = new BigDecimal(f);
        double f1 = bg.setScale(2, BigDecimal.ROUND_HALF_UP).doubleValue();
        System.out.println(f1);
    }
    /**
     * DecimalFormat转换最简便
     */
    public void m2() {
        DecimalFormat df = new DecimalFormat("#.00");
        System.out.println(df.format(f));
    }
    /**
     * String.format打印最简便
     */
    public void m3() {
        System.out.println(String.format("%.2f", f));
    }
    public void m4() {
        NumberFormat nf = NumberFormat.getNumberInstance();
        nf.setMaximumFractionDigits(2);
        System.out.println(nf.format(f));
    }
    public static void main(String[] args) {
        format f = new format();
        f.m1();
        f.m2();
        f.m3();
        f.m4();
    }
} 
 结果: 
 111231.56 
 111231.56 
 111231.56 
 111,231.56  
原文链接:
 
如果在前台jsp页面要显示 两位小数
可以
先在java文件 中定义一个方法
例如
format.class
public String formatDouble(double s) {
		DecimalFormat fmt = new DecimalFormat("##0.0");
		return fmt.format(s);
	} 
 
 format.jsp中引用这个方法即可 
 
<
s:property value="%{formatDouble(#bean.selfRisk)}" /> 
 










