【问题标题】:velocity: do something except in last loop iteration速度:在最后一个循环迭代中做一些事情
【发布时间】:2012-01-02 01:37:11
【问题描述】:

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

正确的成语是什么?

相关Last iteration of enhanced for loop in java

【问题讨论】:

  • @ratchet:与相关问题相同:我将事物与中间的分隔符连接起来,不想将分隔符放在最后一项之后

标签: java loops iteration velocity


【解决方案1】:

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

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

【讨论】:

    【解决方案2】:

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

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

    但是,$velocityHasNext 变量在 1.7 版本中已被弃用,并在 2.0 中被删除,取而代之的是 $foreach.hasNext

    【讨论】:

    • 在撰写本文时,还没有 Velocity 2.0 版。
    【解决方案3】:

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

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

    【讨论】:

    【解决方案4】:

    这在旧版本的 Velocity 中对我有用

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

    【讨论】:

      猜你喜欢
      • 2016-07-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-01
      • 2020-08-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多