最近防御性编程比较火,码农出身(前后端内推)的我不得试试
不出意外我被逮捕了,组内另外一位同事对我的代码进行了 CodeReview,我的防御性编程编程没有幸运逃脱,被标记上了“多重 if-else ”需要进行优化。
下面是我总结出的常用几种优化方式。
版本
- Java8
-
提前使用 return 返回去除不必要的 else
- 如果我们的代码块中需要使用 return 返回,我们应该尽可能早的使用 return 返回而不是使用 else
- 优化前
-
private static boolean extracted(boolean condition) { if (condition) { // do something return false; }else { // do something return true; } }
-
优化后
有时候 switch 比 if-else 更加合适
- 当条件为清晰的变量和枚举、或者单值匹配时,switch 比 if-else 更加合适,可以我们带好更好的可读性以及更好的性能 O(1)
- 优化前
-
优化后
-
如果是你会进行怎么优化!