怎样用Struts2的lambda表达式取一个map集合的子集

2019-03-25 13:33|来源: 网路

前台的jsp代码是这样的。
<s:select cssStyle=" width:200px" key="product.blocode" list="codeGroupsMap['BLOCINFO'].codeMap" headerKey=""
headerValue="选择..">
</s:select>

codeGroupsMap['BLOCINFO'].codeMap 这个东西在后台取得值传到了前台。它就是一个map对象的集合,里面的内容为:
{'101':'湖北','102':'湖南','103':'北京','104':'上海','105':' 广东','106':'湖北武汉','107':'湖南长沙'}

现在我只需要取这个集合的前5个元素,也就是取这个集合的子集得到的这样的集合{'101':'湖北','102':'湖南','103':'北京','104':'上海','105':' 广东'},用lambda表达式试了好久都不出来,好像貌似是这样子用得,但就是没有结果,大家帮忙看下应该怎么用啊,还有没有其它办法。
<s:select cssStyle=" width:200px" key="product.blocode" list="codeGroupsMap['BLOCINFO'].codeMap.{?#this.value.length<3}" headerKey=""
headerValue="选择..">
</s:select>

问题补充:
Rainbow702 写道
你好,我提醒一下你,MAP是无序的,所以你可能需要改用List来实现。

哦。。。。恍然大悟,好像有点头绪了。。

问题补充:
myali88 写道
其实你可以在java代码里面做这个过滤判断,标签只负责显示。

不愧是架构师!

相关问答

更多