2

我正在尝试访问 TreeMap 的第一个元素,我在 JSP 文件中有以下 HTML:

<c:forEach items="${subscriber.depent}" var="entry" begin="0" end="0" step="1">
    <c:set var="dep" value="${entry.value}" />
</c:forEach>

这段代码让我得到了 TreeMap 的第一个元素,但这对我来说似乎是一个“黑客”。

我也试过:

<c:set var="dep" value="${subscriber.depent[0]}" />

但这给了我一个例外:

java.lang.Integer 与 java.lang.Long 不兼容

有更好的方法吗?

谢谢,兰德尔。

4

1 回答 1

3

为了做到这一点,您需要了解“第一个”在您使用 JSTL 的 Collection/array/getter 上下文中有意义的情况。不幸的是 TreeMap.firstKey 不是一个 getter,所以你不能使用 JSTL 语法来获取它。

如果您可以将 TreeMap 子类化,您可以添加一个“getFirstKey()”方法,该方法只调用 firstKey,然后使用“subscriber.depent.firstKey”引用它。

于 2010-08-18T03:41:28.183 回答