Apache VTL-如何在数组中查找项目

时间:2018-07-25 21:54:59

标签: arrays apache velocity vtl

我正在尝试第一次使用VTL,但是看不到要获取输入字符串的数组。

我尝试了“ in”(但我不认为这是该语言的关键词),以及下面的.contains()(但它未在创建的数组中找到字符串)

以下用于用例参考的代码:

#set($MSpanish = ["Argentina", "Belize"])
#elseif($MSpanish.contains(${lead.Country}))
   #set($subject = "hellow world")

我将使用什么关键字代替包含的关键字?在VTL中是否有任何关键字可以节省许多if =语句的时间?

1 个答案:

答案 0 :(得分:0)

如果要获取/检查值,请使用Map 而不是列表

array = np.array(values)
KDEpdf = gaussian_kde(array)
x = np.linspace(0, 50, 1500)
kdepdf = KDEpdf.evaluate(x)
plt.plot(x, kdepdf, label="", color="blue")
plt.legend()
plt.show()

并通过获取价值来获取国家(如果存在)

  #set( $MSpanish = {"Argentina" : "Argentina", "Belize" : "Belize"}) 

或检查是否containsValue

  $MSpanish.get(${lead.Country})
  $MSpanish.containsValue(${lead.Country})
     

对于Map示例,可以使用Map类中定义的方法访问{}运算符中定义的元素。因此,例如,您可以使用$ monkey.Map.get(“ banana”)访问上面的第一个元素以返回字符串'good',甚至使用$ monkey.Map.banana返回相同的值。