【问题标题】:How to sort a Hashmap in JSP?如何在 JSP 中对 Hashmap 进行排序?
【发布时间】:2015-11-12 08:24:10
【问题描述】:

我在 JSP 中实现了一个 Hashmap,现在我需要对其进行排序。

如何在 JSP 中完成?

<jsp:useBean id="myHashMAp" class="java.util.HashMap" scope="request"/>

<c:set target="${myHashMAp}" property="${someProperty}" value="${valueData}"/>

现在如何排序“myHashMAp”?

注意:我不想使用 Scriptlet,它不能在 databean 中完成。

在JSP级别需要形成Hashmap。

【问题讨论】:

  • 您不能对HashMap 或任何其他Map 进行排序(TreeMap 是自排序)。
  • @Kayaman 这就是我在执行地图时所想的,但最近我们遇到了一个情况,其中键是“1,7 和 12”,但地图以 (12,1,7) 的顺序显示条目...为什么会这样?
  • 如果模型一开始就错了,视图就无能为力了。只需修复模型,以便视图可以体面地呈现它。如有必要,将错误的模型包裹在正确的模型中。 “不能完成”是一个非论点。

标签: java jsp sorting hashmap jstl


【解决方案1】:

使用TreeMap,比如

Map<Type, Type> newmap = new TreeMap<Type, Type>(your_hash_map_variable);

更多详情,请参考this

【讨论】:

    【解决方案2】:

    HashMap 无法排序,您必须像 Brijesh 建议的那样使用TreeMap(您的元素必须实现 Comparable 或者您必须在构造期间提供比较器)。

    如果您只需要广告订单,也可以使用LinkedHashMap。这个不需要隔板。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-20
      • 1970-01-01
      • 1970-01-01
      • 2014-05-22
      • 2012-03-16
      • 2010-10-21
      • 2015-03-20
      相关资源
      最近更新 更多