我正在尝试访问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不兼容
有更好的方法吗?
谢谢,兰德尔。
答案 0 :(得分:3)
为了做到这一点,你需要进入一种情况,即在使用JSTL的Collection / array / getter上下文中,“first”是有意义的。不幸的是,TreeMap.firstKey不是一个getter,因此你无法使用JSTL语法来实现它。
如果你可以继承TreeMap,你可以添加一个“getFirstKey()”方法,该方法只调用firstKey,然后用“subscriber.depent.firstKey”引用它。