Apache Velocity 模板:获取 java.util.Set 的第一个元素

Apache Velocity templating: get first element of java.util.Set

我正在寻找一种在 velocity 模板引擎中获取 java.util.Set 第一个元素的方法。谁能推荐一下?

也许你可以获得一个(随机*)元素

$var.iterator().next()

但是 Sets 在它们的元素之间没有任何顺序,所以没有第一个元素。

*随机,喜欢它取决于集合的实现。 在某些情况下(例如,当它是 SortedSet 时),给定的 Iterator 将按某种顺序返回元素。请参阅 SortedSetdocumentation

The set's iterator will traverse the set in ascending element order.

但在这种情况下,无法保证 Set 的实现有时不会改变,因此如果我们谈论的是一般性 Set,您不应依赖于此。

如果我们谈论 SortedSet,您应该使用 first() 方法,而不是:

$var.first()