Velocity 数值格式化(NumberTool工具类):保留两位小数和格式化千分位、取整
2024-08-29 20:57:32
Velocity 自带的工具类:NumberTool 实现数字格式化:保留两位小数和格式化千分位,以及取整。
NumberTool 的 format(String format, Object obj)
函数说明。
第一个参数定义的格式,第二个参数是要被格式化的对象。
1、使用示例:
//保留两位小数
$number.format("#0.00", $val)
//保留一位小数
$number.format("#0.0", $val)
//百分比
$number.format("0.00%", $val)
//千分位分割,并保留两位小数(指对 >= 1000的数字适合,< 1000 的数字会异常)例:99,会被格式化为:099.00
$number.format("#,000.00", $val)
//解决其实也简单,格式化之前判断一下:
#if($!val>=1000) $!{number.format('#,000.00',$!val)} #else $!val #end
//取整,一直不知道怎么对小数取整,后来发现很简单,只是需要换一个函数
$number.integer($val)
2、优化:格式化千分位定义为 macro 宏
如果页面数据太多,每次都判断也麻烦,可以把这个方法写成一个macro宏,然后页面直接使用就可以了。
## 宏定义如下
#macro (formatThousands $number)
#if($number>=1000)
$!{numberTool.format('#,000.00',$number)}
#else
$!{numberTool.format('#0.00',$number)}
#end
#end
## 使用,页面上直接使用
#formatThousands(1000)
3、参考:
最新文章
- centos搭建 nginx一直报错 file not found.
- echo &#39;.SUFFIXES: .cpp&#39; >;>; ${OUTPUT_FILE}
- enhance convenience rather than contribute to the fundamental power of the language
- 不允许修改SQLserver2008r2表中字段的属性问题
- 【Unity3D游戏开发】GameObject.Find()、Transform.Find查找隐藏对象 (十)
- HDU 1098 Ignatius&#39;s puzzle(数学归纳)
- 游戏开发设计模式之原型模式 &; unity3d JSON的使用(unity3d 示例实现)
- PHP 调用 Go 服务的正确方式 - Unix Domain Sockets
- 20162311 实验三 敏捷开发与XP实践 实验报告
- 15 Action View 以及监听 的使用
- CoreProfiler升级到.NetStandard 2.0
- Android--Task和BackStack高级
- bootstrapvalidator的简单校验【必填校验、长度校验、是否存在校验(remote)】
- idea 修改单个项目的 默认编码格式
- java- WatchService监控
- AWS &; ASP.NET
- C++ auto
- python标准库介绍——10 sys 模块详解
- windows server 2008 站点系列--AD的站点建立与子网的管理(zhuanzai)
- 【.Net】HttpClient 的使用