1

Java中是否有一种从列表中的对象读取参数的好方法?例如,我经常想要获取我的对象中属于列表的所有 id。我通常为此编写的代码如下。

List<Integer> ids = new ArrayList<Integer>();
for (MyObject myObj : myObjs){
    ids.add(myObj.getId());
}

有没有其他方法可以做到这一点或任何其他模式?或者我只是在等待(正确的)闭包出现在 java.lang. 我想要的只是一行来返回列表的一个参数的所有值的列表。

谢谢

4

1 回答 1

1

番石榴Lists.transform

final List<Integer> ids = Lists.transform(myObjs, new Function<MyObject, Long>() {
    public Long apply(final MyObject input) {
        return input.getId();
    }
});

编辑:您还可以使用自定义ToId类实现Function<F, T>

于 2012-08-28T13:48:07.290 回答