Freemarker 'Collection.contains'功能

17

我的java代码返回了一个Set<String>。视图需要检查Set是否包含特定的字符串。我找不到任何关于Freemarker如何处理这个的文档。
有什么想法吗?

1个回答

36

你可以使用seq_contains。你需要FreeMarker 2.3.1。

${x?seq_contains("blue")?string("yes", "no")}
这将在序列包含“blue”时输出“yes”。
评论中提到,如果你想要将其放在if语句中。
<#if x?seq_contains("myString")>

这里是关于此的文档 Built-ins for sequences


1
我认为答案可以更正为<#if mySet?seq_contains("myString")>,因为没有指定需要打印字符串。同时,只使用<#if x.contains("myString")>也可以。 - skrii
1
我已经添加了if示例。第一个示例的重点是让seq_contains的功能清晰明确,并不是要展示它可以在哪些不同的语句中使用。 - Iain

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接