MarketCategoryExample categoryExample = new MarketCategoryExample; ListMarketCategory categories = categoryMapperselectByExamplecategoryExample; ListMarketCategory collect = categoriesst
您可以尝试将Function的泛型改为MarketCategory,并在apply方法中返回一个新的MarketCategory对象,如下所示:
List<MarketCategory> collect = categories.stream().map(new Function<MarketCategory, MarketCategory>() {
@Override
public MarketCategory apply(MarketCategory marketCategory) {
MarketCategory newMarketCategory = new MarketCategory();
newMarketCategory.setId(marketCategory.getId());
newMarketCategory.setName(marketCategory.getName());
newMarketCategory.setIconUrl(marketCategory.getIconUrl());
return newMarketCategory;
}
}).collect(Collectors.toList());
或者更简洁的方式是使用lambda表达式:
List<MarketCategory> collect = categories.stream().map(marketCategory -> {
MarketCategory newMarketCategory = new MarketCategory();
newMarketCategory.setId(marketCategory.getId());
newMarketCategory.setName(marketCategory.getName());
newMarketCategory.setIconUrl(marketCategory.getIconUrl());
return newMarketCategory;
}).collect(Collectors.toList());
这样就可以在map操作中将每个MarketCategory对象的id、name和iconUrl属性提取出来,并返回一个新的MarketCategory对象的列表。
原文地址: http://www.cveoy.top/t/topic/i9Ys 著作权归作者所有。请勿转载和采集!