List的分割
阿新 • • 發佈:2018-12-09
有時候我們會遇到分割List,把list分成幾份,或者把list的元素轉換成另一個型別的元素,使用 guava的Lists.partition,Lists.transform可以幫忙我們更加簡單的實現此功能
import com.google.common.base.Function; import com.google.common.collect.Lists;
import java.util.ArrayList; import java.util.List;
public class Main { public static void main(String[] args) throws Exception {
List<Long> list = new ArrayList<>(); list.add(1L); list.add(2L); list.add(3L); list.add(4L); list.add(5L); list.add(6L); list.add(7L); list.add(8L); list.add(9L); List<List<Long>> originalPageList = Lists.partition(list, 3); List<String> pageList = Lists.transform(originalPageList, new Function<List<Long>, String>() { @Override public String apply(List<Long> list) { final StringBuffer pageSkuIds = new StringBuffer(); for(Long info : list) { pageSkuIds.append("AA_").append(info).append(","); } return pageSkuIds.toString(); } }); System.out.println(pageList.toString()); }
}