orElseGet 用法:
Optional.ofNullable(categoryTreeModel.getSubCategoryList()).orElseGet(() -> {
return new ArrayList<>();
}).forEach(child -> {
categoryModel.getChildList().add(buildCategoryTree(child));
});
可以看出与orElse区别还是很大的