首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用Lambdaj对地图/ EntrySet进行排序

使用Lambdaj对地图/ EntrySet进行排序
EN

Stack Overflow用户
提问于 2012-06-29 23:24:58
回答 1查看 1K关注 0票数 1

我想知道是否有可能使用EntrySet<排序K,V>,基于K的一些属性?

我不认为Lambdaj会让我这么做,我只是想确认一下。

例如,如果我有一个Map< A,B>,其中A具有以下结构:

代码语言:javascript
复制
public class A{
private double published;

     public double getPublished()
     {
           return double; 
     }
}

我可以在A.getPublished上使用lambdaj对条目集进行排序吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-06-30 06:02:59

不幸的是,由于类型擦除的原因,您所请求的内容是不可能的。实际上,假设你有map类型的Map,你想要做的事情如下:

代码语言:javascript
复制
sort(map.entrySet(), on(Map.Entry.class).getKey().getPublished());

这不起作用,因为lambdaj不知道Map.Entry实际上是一个Map.Entry (当然还有像on(Map.Entry.class).getKey()这样的语法...是不允许的)。这意味着on(Map.Entry.class).getKey()调用只返回object类的一个对象,因此不允许对其调用getPublished()方法。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11264568

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档