需要将一组浮点变量格式化为00.00

时间:2010-06-05 03:58:33

标签: java jsp

好的,我有一个数据库列'UnitPrice',带有一系列值 例如:23,23.5,43.23

现在我需要知道是否有办法在打印出来时将它们全部格式化为00.00格式。我现在已经失败了大约一个小时......

3 个答案:

答案 0 :(得分:2)

您通常会使用JSTL fmt taglib。这样您就不需要在业务层中对此进行麻烦,但在视图层中,它就属于它所属的位置。

要安装JSTL,只需在/WEB-INF/lib中删除jstl-1.2.jar并使用fmt taglib,只需按照its documentation在JSP中声明它。

<%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %>

然后您可以使用fmt:formatNumber按照您想要的方式设置双打格式,以下是欧元的示例:

<p>The price is: <fmt:formatNumber value="${unit.price}" type="currency" currencySymbol="&euro;" />

答案 1 :(得分:1)

您需要在jdk中使用format api

答案 2 :(得分:0)

只需这样做:

DecimalFormat decimalFormat = new DecimalFormat("00.00");
Double[] array = new Double[] {23d, 23.5d, 43.23d};
for (int i = 0; i < array.length; i++) {
    System.out.println(decimalFormat.format(array[i]));
}

或使用format / printf语法:

Double[] array = new Double[] {23d, 23.5d, 43.23d};
for (int i = 0; i < array.length; i++) {
    System.out.format("%05.2f\n", array[i]);
}