web-dev-qa-db-ja.com

速度:最後のループ反復以外で何かを行う

ベロシティでは、最後のループで何か違うことをしたいと思います。

正しいイディオムは何ですか?

[〜#〜] related [〜#〜]Javaでの拡張forループの最後の反復

25
flybywire

最後の反復にいる場合は、テストを使用できます::

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

@soulcheckの答えはあなたが必要とするものですが、$foreach変数は、ベロシティ1.7でのみ使用できます。以前のバージョンを使用している場合は、次のものを使用できます。

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

しかし $velocityHasNext変数はバージョン1.7で非推奨になり、2.0で削除されて$foreach.hasNext

19
Mark Rhodes

私が使用するイディオムは、ループが終了しない場合に追加されるオプションのテキストを保存することです。

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

これは、古いバージョンのVelocityで機能しました

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