2013-07-31 39 views
0

我是Velocity的新手,找不到解決這個問題的東西,所以我很抱歉,如果它是微不足道的。假設我有以下200個變量。Velocity:用一個concatinated的名稱解引用一個變量

#set($a1 = "apple", $b1 = "red", $a2 = "banana", $b2 = "yellow" .... 
     .... $a100 = "plum", $b100 = "purple) 

我想輸出水果,然後輸出它的顏色。有沒有辦法將「a」和「b」連接到範圍(1,100)中的每個數字,然後取消引用該變量?喜歡的東西

#foreach($i in [1..100]) 
    #set($fruit = "a{$i}") 
    #set($color = "b{$i}") 

    The fruit $fruit is the color $color. 

#end 

我試過很多東西,但都不能只管理到輸出$ A1 $ B1字符串而不是它們指的是什麼。 謝謝!

回答

3
#set ($d = '$') 
#set ($h = '#') 
#foreach ($i in [1..100]) 
    #evaluate("${h}set(${d}fruit = ${d}a${i})") 
    #evaluate("${h}set(${d}color = ${d}b${i})") 
    The fruit ${fruit} is the color ${color}. 
#end 
+0

這是正確的。爲什麼這不被接受? – alvi

相關問題