velocity 数字分割宏

原创
2015/04/20 21:04
阅读数 1.9K

##velocity 数字格式化处理

#macro(numSplit $num $digits)
	#set($nums = "$!{num}.0")
	#set($arr = $nums.split("\."))
	#set($int = $arr[0])
	#set($digit = $arr[1])
	
	#set($pad = $digits - $digit.length())
	#if($pad > 0)
		#foreach($i in [1..$pad])
			#set($digit = $digit+"0")
		#end
	#else
		#set($digit = $digit.substring(0,$digits))
	#end

	#if(!$int || $int.length() == 0)
		#set($int = "0")
	#end
	
	#set($numret = [$int,$digit])
#end

第一个参数是要格式化的数字,第二个参数表示要多少个小数。 注意点是,宏内部的变量都是全局的,但是传入的宏的参数使用#set是不能够改变的。 这里的返回值是$numret。

展开阅读全文
加载中

作者的其它热门文章

打赏
0
4 收藏
分享
打赏
0 评论
4 收藏
0
分享
返回顶部
顶部