Java基础001 --- 结构化编程
2020-12-13 14:32
标签:option else 场景 16px 结构 修改 属性 支持 提示信息 本随笔旨在分享一些结构化编程思想,如有不妥,望指正,共同学习共同进步!! 1、非空断言 使用jdk自带的Objects类 使用开源guava库 2、非空赋值 使用场景:构造器、java bean的setter方法中 使用jdk自带的Objects类 使用开源guava库 3、guava的参数校验 这里说一些guava参数校验功能,guava提供了优雅的参数校验方法 4、Holder类的使用 在输入校验方法中,我们通常希望返回校验结果true/false以及校验提示信息,但是java方法只支持返回单个参数,并且我们不希望修改输入数据 因此,我们可以通过使用Holder类完成该功能; Holder类非常简单,只有一个泛型处理,以及一个属性value 下面为使用方法: 5、Optional类的使用 Optional类由java1.8引入,主要为了简化非空判断,并且能够快速定位空指针异常 (1) of 用来创建一个非空对象,传入的值不能为空,如果为空,抛空指针异常 (2)ofNullable 用来创建一个对象,输入可以为空;为空,则创建一个空对象。 (3)get 如果创建的Optional中的值存在,返回该值,否则抛NoSuchElementException异常 (4)isPresent 如果创建的Optional中的值存在,返回true,否则返回false (5)ifPresent 如果创建的Optional中的值存在,则dosomething; Optional.ofNullable(value).ifPresent(dosomething) (6)filter 如果创建的Optional对象中的值满足filter中的过滤条件,返回包含该值的Optional对象,否则,返回空的Optional对象