velocity 数字分割宏

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。

时间: 04-19

velocity 数字分割宏的相关文章

Excel 用于批量把单元格设置为"文本格式保存的数字"的宏

首先把所有的数字录入(或者导出为)井号+数字的格式,比如“#3333333323424234234234”,然后运行下面的宏: Sub Num2Text() If Not TypeOf Application.Selection Is Range Then MsgBox "You must select cells!" Return End If For Each cell In Application.Selection.Cells If cell.Text <> &qu

CVTE笔试—数字分割

欢迎转载,转载请注明出处:http://www.cnblogs.com/xyzyj/p/7469356.html 题目:给定一个整数n和一个整数m,将n按照位分割成多个数字,使得这多个数字的和最接近m,           例如n=654321,m=50,则最大值为48(6+5+4+32+1). 分析:(1)对于一个Integer类型的数字n和m,首先有种异常情况;   即 n<m :直接返回n: (2)将整数n按位存入一个整型数组中,所求的最大值的位数肯定小于等于m的位数, 则以2为大小作为窗

java一段数字 分割的升序降序 奇偶数分开排序

/** * 降序升序 * * @param str * @since 0.0.1 */ public void sort(String str){ String[] nums = str.split(" "); List<Integer> odd = new ArrayList<Integer>(); List<Integer> even = new ArrayList<Integer>(); for (String string : n

velocity的宏

velocity中的宏macro的使用当中,由于velocity会将宏加载到tomcat中去,但是如果修改之后再加载的话velocity发现有了相同的宏名称,则不会加载 所以这时候的问题就是,在页面上不会显示修改的内容. 如果要遇到这样的问题的话,如我要修改宏里面的东西,之后刷新页面却发现页面没有变化 上边的原理已经讲清楚了,所以我们只需要将宏的名称修改一下就能加载近来了! velocity的开发团队真坑,自己也已经不用这个了,也不更新了,就不说说这样的问题,都至少5年了. 没猜错的话,free

使用 Velocity 模板引擎快速生成代码

原文地址:http://www.ibm.com/developerworks/cn/java/j-lo-velocity1/ Velocity 是一个基于 Java 的模板引擎,它允许任何人仅仅简单的使用模板语言来引用由 Java 代码定义的对象,从而实现界面和 Java 代码的分离,使得界面设计人员可以和 Java 程序开发人员同步开发一个遵循 MVC 架构的 web 站点.但是在实际应用过程中,Velocity 又不仅仅被用在了 MVC 的架构中. Velocity 模板引擎介绍 在现今的软

(二)模板引擎之Velocity脚本基本语法全

velocity velocity三种reference 变量:对java对象的一种字符串化表示,返回值调用了java的toString()方法的结果. 方法:调用的是对象的某个方法,该方法必须是public的,返回值也是toString(),方法的参数也必须为String的. 属性:除了访问java的类属性外,等价于get..()方法. 基本符号 1."#"来标识velocity的脚本语句. 2."$"来标识一个对象(或者变量). 3."{}"

velocity教程

Velocity是一个基于java的模板引擎(template engine).它允许任何人仅仅简单的使用模板语言(template language)来引用由java代码定义的对象. 当Velocity应用于web开发时,界面设计人员可以和java程序开发人员同步开发一个遵循MVC架构的web站点,也就是说,页面设计人员可以只 关注页面的显示效果,而由java程序开发人员关注业务逻辑编码.Velocity将java代码从web页面中分离出来,这样为web站点的长期维护提 供了便利,同时也为我们

Velocity高速新手教程

变量 (1)变量的定义: #set($name = "hello")      说明:velocity中变量是弱类型的. 当使用#set 指令时,括在双引號中的字面字符串将解析和又一次解释.例如以下所看到的: #set($directoryRoot = "www" ) #set($templateName = "index.vm" ) #set($template = "$directoryRoot/$templateName"

Velocity快速入门教程

Velocity快速入门教程-脚本语法详解(转) 1.变量 (1)变量的定义: #set($name = "hello")      说明:velocity中变量是弱类型的. 当使用#set 指令时,括在双引号中的字面字符串将解析和重新解释,如下所示: #set($directoryRoot = "www" ) #set($templateName = "index.vm" ) #set($template = "$directoryR