JSTLでは、
<fmt:formatNumber value="${1.6}" type="number" pattern="#"/>
リターン2
と以下
<fmt:formatNumber value="${1.4}" type="number" pattern="#"/>
戻り1
、必要なのは2
、数の上限です。
JSTLでこれを実現する直接的な方法はありますか(または、適切なカスタムタグを使用することが唯一の方法です)?
DecimalFormat
によって使用されるデフォルトの丸めモード<fmt:formatNumber>
はですRoundingMode.HALF_EVEN
。タグ属性を介してこれを変更する方法はありません。0.5
奇数の整数でない場合は、値に追加するだけで、のように動作しますRoundingMode.CEILING
。
<fmt:formatNumber value="${bean.number + (bean.number % 1 == 0 ? 0 : 0.5)}"
type="number" pattern="#" />
このコードを試してください:
<fmt:formatNumber value="${N+(1-(N%1))%1}" type="number" pattern="#"/>
ここで、Nは変数の名前です。
よろしく