Java中如何优化if-else-创新互联

这期内容当中小编将会给大家带来有关Java中如何优化if-else,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

创新互联技术团队10余年来致力于为客户提供做网站、网站建设品牌网站制作全网营销推广、搜索引擎SEO优化等服务。经过多年发展,公司拥有经验丰富的技术团队,先后服务、推广了近千家网站,包括各类中小企业、企事单位、高校等机构单位。

为什么我们写的代码都是if-else?


程序员想必都经历过这样的场景:刚开始自己写的代码很简洁,逻辑清晰,函数精简,没有一个if-else,

可随着代码逻辑不断完善和业务的瞬息万变:比如需要对入参进行类型和值进行判断;这里要判断下对象是否为null;不同类型执行不同的流程。

落地到具体实现只能不停地加if-else来处理,渐渐地,代码变得越来越庞大,函数越来越长,文件行数也迅速突破上千行,维护难度也越来越大,到后期基本达到一种难以维护的状态。

虽然我们都很不情愿写出满屏if-else的代码,可逻辑上就是需要特殊判断,很绝望,可也没办法避免啊。

其实回头看看自己的代码,写if-else不外乎两种场景:异常逻辑处理和不同状态处理。

两者最主要的区别是:异常逻辑处理说明只能一个分支是正常流程,而不同状态处理都所有分支都是正常流程。

怎么理解?举个例子:

 //举例一:异常逻辑处理例子
Object obj = getObj();
if (obj != null) {
  //do something
}else{
  //do something
}

//举例二:状态处理例子
Object obj = getObj();
if (obj.getType == 1) {
  //do something
}else if (obj.getType == 2) {
  //do something
}else{
  //do something
}

文章标题:Java中如何优化if-else-创新互联
网页URL:http://scyanting.com/article/dpddsj.html