首页 新闻 会员 周边

if (a != "") { }if (b != "") { }if (a != "" && b != "") { } 怎么写效率更高

0
[已解决问题] 解决于 2016-11-21 17:30

string a = HttpContext.Current.Request["a"];

string b = HttpContext.Current.Request["b"];
if (a != "")
{
//处理代码...
}
if (b != "")
{
//处理代码...
}
if (a != "" && b != "")
{
//处理代码...
}

有没有比这更高效的代码

CrazyRisk的主页 CrazyRisk | 菜鸟二级 | 园豆:202
提问于:2016-11-16 15:25
< >
分享
最佳答案
1

用model绑定做校验效率最高.

不要纠结这些有的没得.重要的代码结构清晰.效率不效率完全不是重点.

奖励园豆:5
吴瑞祥 | 高人七级 |园豆:29449 | 2016-11-16 15:30

有没有别的写法,怎么感觉我想到的三种写法都要有重复的判断 上面我只写了其中的一种,当然如果用if(){}else{}写感觉看着好乱,不易阅读,我只是想天真的每个字段都判断一次,我这三段的处理代码是不一样的

CrazyRisk | 园豆:202 (菜鸟二级) | 2016-11-16 15:50

@CrazyRisk: 重复不重复都不重要的.重要的是业务上是不是清晰.

让人一看就明白你的代码是在写什么就行了

吴瑞祥 | 园豆:29449 (高人七级) | 2016-11-16 16:05
其他回答(2)
1

if(!"".equals(a) && !"".equals(b)){

}else{
  if(!"".equals(a)){

  }else if(!"".equals(b)){

  }else{//a和b同时为""的时候

  }
}

从未在这种分支上考虑过效率,囧。。。大可放眼缓存机制、SQL优化、分布式集群、算法等角度提高效率。

如果非得较真的话,可以从业务上深入一下。比如有可能经常满足的条件往前写呗……

林豪桀 | 园豆:228 (菜鸟二级) | 2016-11-16 16:35

 呃 没找到更加优化的方案,其实也没什么大必要,一个if对于程序来说 程序能算出来的时间里这三个条件都能走完了,算了 谢谢大家 不纠结了

支持(0) 反对(0) CrazyRisk | 园豆:202 (菜鸟二级) | 2016-11-16 16:53
1

个人觉得没必要

张云山 | 园豆:642 (小虾三级) | 2016-11-17 13:09

...

支持(0) 反对(0) CrazyRisk | 园豆:202 (菜鸟二级) | 2016-11-17 13:55
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册