当前位置: 首页 > 知识库问答 >
问题:

在SortedMap中映射值

董意蕴
2023-03-14

我使用以下方法在映射中映射值:

public static <X, Y, Z> Map<X, Z> transformValues(Map<? extends X, ? extends Y> input, Function<Y, Z> function) {
    return input.keySet().stream()
      .collect(Collectors.toMap(Function.identity(),
        key -> function.apply(input.get(key))));
  }

这里建议:https://stackoverflow.com/a/25905196/411965

我想创建一个与SortedMap类似的方法:

public static <X, Y, Z> SortedMap<X, Z> transformValues(SortedMap<? extends X, ? extends Y> input, Function<Y, Z> function)

java 8做这件事的方法是什么?

共有2个答案

曾航
2023-03-14

无流的Al替代溶液:

SortedMap<X, Z> output = new TreeMap<>();
input.forEach((x, y) -> output.put(x, function.apply(y)));

这种方法不会在键集上迭代,以便以后对每个键执行查找。相反,它直接迭代映射,并将每个键值对放入输出SortedMap,使用函数预先转换值。依我看,它也更简洁易读。

利思源
2023-03-14

您可以收集到一个实现SortedMapTreeMap中。

public static <X, Y, Z> SortedMap<X, Z> transformValues(Map<? extends X, ? extends Y> input, Function<Y, Z> function) {
    return input.keySet()
                .stream()
                .collect(Collectors.toMap(Function.identity(),
                                          key -> function.apply(input.get(key)),
                                          (v1, v2) -> {
                                              return v1;
                                          }, TreeMap::new));

}
 类似资料:
  • 目前我有一个DAO在做这样的事情: 而映射器则执行如下操作:(简化为该问题所需的内容) 作为JsonB字段存储在Aurora中。我读过一些关于注释的文章,但由于jdbi文档不清楚,所以我不确定这是否正确。 我映射结果的方式是“标准”方式吗?还是有更好/更有效的方式? 谢谢

  • SortedMap接口扩展了Map。 它确保条目按升序键维护。 当调用映射中没有任何项时,有几种方法会抛出NoSuchElementException。 当对象与地图中的元素不兼容时,抛出ClassCastException。 如果在映射中不允许null时尝试使用null对象,则抛出NullPointerException。 SortedMap声明的方法总结在下表中 - Sr.No. 方法和描述

  • 问题内容: xml文件位于我的项目中。我正在使用Eclipse并运行Tomcat(它不是通过Eclipse安装的。我希望它是单独的安装)。 当表单页面提交到servlet时,它不起作用。我每次都收到404错误。我已经遇到这个问题一段时间了。有人请帮助我。 问题答案: 您缺少标记,这对于映射很重要。因此,使用以下命令: 并且您应该像下面这样在表单上赋予价值: 并记下所有值在以下代码中区分大小写: 您

  • 我们必须在可选元素“mappedby”中指定什么。是特定模型的table_name还是classname? 哪个是正确的? 这个

  • 我正在使用Hibernate和JPA注释来映射我的类。当hibernate尝试映射这个类时,我遇到了一个问题 我的Social alStat类是: 我得到了这个错误: 我猜发生这种情况是因为我试图映射到一个基本类,但@ElementCollection注释不应该解决这个问题吗? 我的item类如下所示:

  • 前端将这个json发送到我的API 控制器: