首页 > 解决方案 > 什么时候在 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

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

提前致谢。

标签: performancevelocity

解决方案


第一种方法更快,因为第二种方法将$myobj.mymethod()在每次迭代中调用。

但是只要这个调用不是扩展的,你也可以通过减少中间变量来提高代码的可读性。


推荐阅读