相关疑难解决方法(0)

按值对地图<键,值>进行排序

我是Java的新手,经常发现我需要对Map<Key, Value>值进行排序.

由于值不是唯一的,我发现自己将其转换keySet为a array,并通过数组排序对该数组进行排序,并使用自定义比较器对与键关联的值进行排序.

有没有更简单的方法?

java sorting collections dictionary

1569
推荐指数
27
解决办法
134万
查看次数

相当于Java 7中的map(来自haskell)

在Haskell中有一个名为的函数map,它接受List of Type A和一个函数f,将类型A的值映射到type 的值B.它返回一个类型列表B,这样结果列表的每个元素都来自f对输入列表中值的调用.

例如,给定

  • 一份清单m = ['a', 'b', 'c'],
  • 和一个功能f = {'a' -> 1, 'b' -> 2, 'c' -> 3},
  • 然后map(m, f) = [1, 2, 3].

是否有一个可以与Java 7一起使用的库提供类似map功能的库?我已经查看了apache CollectionUtils并发现了像forAllDotransform这样的东西,但它们不允许重新调整一个完全不同类型的集合.谷歌搜索其他库失败的原因相同.

要明确:我知道如何自己解决问题,但我强烈认为必须已经存在一个更好地执行此任务的好库.

额外的问题:在Java 7中是否有一些与Haskell仿函数相当的东西(即从集合转移到迭代)?进一步的解释:是否有一个map函数Iterable<A>代替Collection<A>并返回一个Iterable<B>而不是Collection<B>(由拟合函数提供f)?

java haskell

9
推荐指数
1
解决办法
609
查看次数

是否可以将ConcurrentHashmap计算与java 7源代码级别一起使用?

我们有一个使用gwt 2.6的旧项目,因此我们需要使用-source 1.7选项进行编译.

使用的JRE和JDK是1.8,但使用1.7源代码选项进行编译.

我们想要使用ConcurrentHashMap中的新计算函数,它只能从java 8中获得.当使用eclipse和maven编译时,一切都很好.另一方面,IntelliJ正在抱怨.我的问题是,它会起作用还是我们会遇到问题?

这个项目会运行吗?

在谷歌搜索ConcurrentHashmap计算,java 8和源代码级别1.7没有提供任何信息.

java intellij-idea java-8

5
推荐指数
1
解决办法
109
查看次数