何时在Velocity中评估字符串?

时间:2019-02-06 13:37:06

标签: performance velocity

什么时候在Velocity中评估字符串?直接在初始化时还是在引用字符串时?

示例代码可以更好地说明问题:

#set($mystring = "A ${myobj.mymethod()} B")

#foreach($element in $somelist)
   $element $mystring
#end

因此该字符串包含一些速度代码。然后考虑以下代码:

#foreach($element in $somelist)
   $element A $myobj.mymethod() B
#end

在性能上哪个更快,或者它们相等?

谢谢。

1 个答案:

答案 0 :(得分:1)

第一个方法更快,因为第二个方法在每次迭代时都会调用$myobj.mymethod()

但是只要此调用不扩展,您还可以通过减少中间变量来提高特权代码的可读性。