sum*_*ulb 15 java foreach velocity
我试图在Velocity #foreach指令中获得一个从零开始的计数器.
如果我使用:
#foreach ($item in $list)
item.getName() : $velocityCount
#end
Run Code Online (Sandbox Code Playgroud)
我会得到:
Fred : 1
Wilma : 2
Barney : 3
Run Code Online (Sandbox Code Playgroud)
但是我需要:
Fred : 0
Wilma : 1
Barney : 2
Run Code Online (Sandbox Code Playgroud)
从速度模板的角度来看,解决方案必须尽可能简单.
编辑:
我可以使用:
#foreach ($item in $list)
#set( $num = $velocityCount - 1 ) //The white space in mandatory
item.getName() : $num
#end
Run Code Online (Sandbox Code Playgroud)
它的工作原理.但我正在寻找更优雅的解决方案.
编辑2:
我也需要基于单一的计数器.也就是说,在同一模板中,我很可能会有一个#foreach指令需要一个基于零的计数器和另一个#foreach需要一个基本计数器的指令.
ser*_*erg 23
如果您使用的是Velocity 1.7,则循环内部可以使用$foreach.index(基于0)和$foreach.count(基于1)特殊变量.
$velocityCount 是很久以前被弃用的东西.
#set($i = 0)
#foreach($str in $names)
#set($i = $i+1)
$i : $str
#end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19162 次 |
| 最近记录: |