velocity:除了在最后一次循环迭代中做一些事情

时间:2011-11-19 19:53:36

标签: java loops iteration velocity

在速度方面,我想在最后一个循环中做一些不同的事情。

什么是正确的习语?

相关Last iteration of enhanced for loop in java

4 个答案:

答案 0 :(得分:58)

如果你在最后一次迭代中,你可以使用测试::

#foreach( $item in $list )
    $item.text #if( $foreach.hasNext ), #end
#end

答案 1 :(得分:18)

@schechecheck的答案就是你需要的,但要注意$foreach变量仅在速度1.7中可用,如果你使用的是早期版本,你可以使用:

#foreach( $item in $list )
    $item.text #if( $velocityHasNext ), #end
#end

但是,$velocityHasNext变量在版本1.7中已弃用,在2.0中已删除,而支持$foreach.hasNext

答案 2 :(得分:6)

我使用的习惯用法是保存在循环未完成时要添加的可选文本。

#set($sep = "")    
#foreach($item in $list)
 $sep$item
 #set($sep = ", ")
#end

答案 3 :(得分:1)

这对我来说在较旧版本的Velocity中起作用

#if($velocityCount < $list.size()), #end