関数型言語によくあるmap関数のように、あるオブジェクトのリストのそれぞれの要素に対してある関数を適用して別のリストを作りたい時、guavaライブラリのLists.transformを使うと便利です。
例えば、何かのオブジェクトのリストがあって、それぞれのオブジェクトのidのリストを作りたいときなどに便利です。
Lists.transformの使用例
List<SomeObject> list = …;
List<Long> ids = Lists.transform(list, new Function<SomeObject, Long>() {
@Override
public Long apply(SomeObject arg0) {
return arg0.getId();
}
});