好的,我有一个数据库列'UnitPrice',带有一系列值 例如:23,23.5,43.23
现在我需要知道是否有办法在打印出来时将它们全部格式化为00.00格式。我现在已经失败了大约一个小时......
答案 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="€" />
答案 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]);
}