当前位置: 首页 > news >正文

企业如何做网站外包多少钱/什么是seo什么是sem

企业如何做网站外包多少钱,什么是seo什么是sem,二手物品交易网站开发环境,个人网站怎么做银行卡支付宝项目中尤其是在持久层,难免会有大量的针对集合,对象,字符串的操作,为了程序的健壮性,我们不得不进行判空,像下面箭头式编码吗? if(null!person){...if(null!address){...if(null!phone){...}}}NO 优雅的规避空指针异常 一. 工具类 坐标 <dependency><groupId>org.…

项目中尤其是在持久层,难免会有大量的针对集合,对象,字符串的操作,为了程序的健壮性,我们不得不进行判空,像下面箭头式编码吗?

if(null!=person){...if(null!=address){...if(null!=phone){...}}}

NO


优雅的规避空指针异常

一. 工具类

坐标

<dependency><groupId>org.apache.commons</groupId><artifactId>commons-lang3</artifactId><version>3.4</version>
</dependency>

针对字符串

String name="";
boolean blank = StringUtils.isBlank(name);
System.out.println(blank);

坐标

<dependency><groupId>commons-collections</groupId><artifactId>commons-collections</artifactId><version>3.2.2</version>
</dependency>

针对集合

boolean empty = CollectionUtils.isEmpty(new ArrayList());
System.out.println(empty);

上面两个工具类也是真正项目中重用的,会比我们自己写一堆if去判断相对安全


我们知道,后端通常会从DB查询多条数据,封装一个集合交给前端渲染,一旦这个集合为空,就会报错 NPE,前面的工具类可以帮我们很好的做出判断,具体怎么做,大概有两种方式

  • 第一种,我们自定义异常,一旦出现null,我们抛出自定义的异常给前端,前端接收到异常,进行处理
  • 第二种,一旦出现null;我们手动new 一个相应的集合或者对象,前端接受到空的集合,渲染的也是空,同样避免的空指针异常

二. Optional

位于java.util包下Optional是jdk8新增的final工具类,我们可以通过它以一种函数式风格灵活的进行判断,处理

Optional是一个容器对象,传递给它什么,他就包装什么!

它有如下几种工厂方法创建OPtional对象

  • 使用 of 方法, 必须确保传递进去的对象不为空,不然直接抛出空指针异常
public static <T> Optional<T> of(T value) {return new Optional<>(value);
}
  • 创建一个一定为空的容器对象
public static<T> Optional<T> empty() {@SuppressWarnings("unchecked")Optional<T> t = (Optional<T>) EMPTY;return t;
}
  • 创建一个可能为空,也可能不为空的容器对象
public static <T> Optional<T> ofNullable(T value) {return value == null ? empty() : of(value);
}

下面几个方法引入函数式编程风格

  • 如果容器为空,打印备选值
System.out.println(optional.orElse("hello"));
  • 如果容器为空,打印备选值 入参是Supplier, 不接受参数返回一个结果
System.out.println(optional.orElseGet(()->"haha"));

如何使用函数式编程风格替换掉

if(null!=list){return list;}else{return new ArrayList():}
//模拟后端的查询出来的结果
List<student> list = Arrays.asList(new student(1, "123"), new student(2, "123"));
OptionalText optionalText = new OptionalText();
optionalText.setStuList(list);//创容器
Optional<OptionalText> optional1 = optional.ofNullable(optionalText);
//容器里面对象的list如果有值则返回,如果没有,则返回空list
List<student> students = optional1.map(item -> item.getStuList()).orElse(new ArrayList<student>());
  • 此外: Optional不能作为成员变量,方法参数 通常是作为方法的返回值

转载于:https://www.cnblogs.com/ZhuChangwu/p/11150569.html

http://www.jmfq.cn/news/4925557.html

相关文章:

  • win2012做网站/北京百度推广代理公司
  • 北京服务器租用/seo优化方案总结
  • 宋庄网站建设/郑州seo顾问外包公司
  • 泊头做网站的/上海官网seo
  • 经典网站代码/百度一下官网首页
  • 做时时彩网站平台软件/淘宝网店怎么运营起来
  • wordpress名言插件/搜索引擎关键词优化技巧
  • 云南手机网站制作/自助建站系统模板
  • 如何建外贸网站/百度网页制作
  • 建设网站需要几个人完成/sem运营
  • 台州专业制作网站/宁波seo服务推广
  • 临沂建设规划局网站/今天的新闻 最新消息
  • 在哪个网站做流程图比较好看/网络推广网络营销和网站推广的区别
  • 如何做外贸网站推广/怎么在百度发布个人简介
  • 网站开发还有哪些/百度开户渠道商哪里找
  • 做网站机构图用什么工具/网络推广有哪些途径
  • 企业网站建设分析/中国网评中国网评
  • 快速的网站开发工具/全国今日新增疫情
  • 一般网站服务费怎么入账做分录/什么是关键词
  • 做网站建设价格/cps游戏推广平台
  • 凡科做网站技巧/小熊猫seo博客
  • 漳州市城乡建设局网站6/推广项目网站
  • 台州市住房和城乡建设局网站/服务营销策略
  • 哪里有微信网站建设/长尾关键词挖掘爱站网
  • 怎么做投资网站不违法/首页优化排名
  • 小城建设的网站/比较靠谱的推广平台
  • 合肥市门窗工程在哪个网站接活做/网站推广教程
  • 比较有名的网站建设公司/渠道营销推广方案
  • 官网站内优化怎么做/湖南网络优化
  • 北京网站建设的价格天/seopc流量排名官网