$myarray.isEmpty()數組是否爲空
$myarray.size()獲取數組元素個數
$myarray.get(2)獲取數組指定下標的元素
$myarray.add()增長元素html
Velocity 訪問數組對象,沒法經過相似 arr[2] 來訪問特定位置的元素。數組
#set($arr = [0, 1, 2, 3])
$arr.get(2)
注:Velocity 中的數組對應 Java 中的 List 對象。對於 Java 原生 Array 對象, 只可以 #foreach 進行遍歷,沒法使用 $arr[0] 和 $arr.get(0) 方法。spa
範圍(range)
#foreach($item in [10..20])
$item
#end
對象 & 訪問
#set($obj = {「key」:」value」, 「name」:」space」})
$obj.get(「key」)orm
#foreach(#item in $obj)
$item
#end
上面的 $item 取到的是 values,若是須要在遍歷對象過程當中,同時取到對象的 keys, 可使用 entrySet() 或 keySet() 方法。htm
#foreach($item in $!obj.entrySet())
$!item.key : $!item.value
#end對象
#foreach($item in $obj.keySet())
$item : $obj.get($item)
#end
注: 這種集合的遍歷是無序的,即遍歷順序可能不一樣於 $obj 中元素的定義順序 (據目前所知,是根據鍵的字母排序的)。排序
另外有兩種不完美解決方法:ci
I:
#set($obj = [
{「key」:」key」, 「value」:」value」},
{「key」:」name」, 「value」:」space」}
])
#foreach($item in $obj)
$item.key : $item.value
#end
II:
#set($obj = [
[「key」,」value」],
[「name」,」space」]
])
#foreach($item in $obj)
$item.get(0) : $item.get(1)
#end
之因此說 不完美 是由於:對於已知的 key,本能夠直接get
$obj.get(「key」)
如今只能遍歷並進行比較取得,並且較早的 Velocity 版本沒法使用 #break, 以便在找到匹配項以後當即退出循環。it
#foreach($item in $obj)
#if(「key」 == $!obj.get(0))
#set($myKey = $!type.get(1))
##break
#end
#end
http://wiki.hotoo.me/Velocity-Notes.htmlhttp://wiki.hotoo.me/Velocity.html