Java 8 流实现新的内存分页
import java.util.List; import java.util.stream.Collectors; public class JavaMemoryPageUtil { public static <T> List<T> getPageLimit(List<T> dataList, long pageNum, long pageSize) { return dataList.stream().skip(pageNum * pageSize).limit(pageSize).collect(Collectors.toList()); } }
类比 SQL 语法 skip 就是 SQL 的 offset,limit 就是 SQL 的 limit。
Java 1.8 带来的很多的函数式特性,其中 steam 就是其中使用最高的特性之一啦。steam 提供了一组带有语义的函数进行数据操作,如果使用好这些特性,会大大增强代码的可读性和可维护性。
故乡明