添加到列表 在 Velocity 中打印 true

Adding to List Prints true in Velocity

我正在尝试将一些字符串值添加到 Velocity 中的列表中。当我 运行 代码时它工作正常。但是它添加值的行打印为真。在 Velocity 中总是这样吗?我是 Velocity 模板的新手,所以自己搞不懂。

#set ($uniqueInterfaces     =   [])
#if($ipv4interfaceName == $ipv6interfaceName)
    $uniqueInterfaces.add($ipv4interfaceName)
#end

它是带有嵌套 foreach 的较大代码的一部分。它有两个匹配项,所以输出是:

true
true

我根本不需要打印这个 true!

Java 的 List#add 方法 returns 布尔值,这就是为什么这个 return 值打印在你的 html 输出中的原因。

您可以简单地通过将 add 方法的输出分配给虚拟变量来隐藏它:

#set ($uniqueInterfaces     =   [])
#if($ipv4interfaceName == $ipv6interfaceName)
    #set ($swallow = $uniqueInterfaces.add($ipv4interfaceName))
#end