【发布时间】:2020-12-08 07:56:11
【问题描述】:
在我的项目中,有类似如下代码的逻辑,会有多种类型,不过这样写太乱了,想问问有没有更优雅的方式.
int a = 3,b = 5;
int type = 2;
if (type == 1) {
if (a > 1) {
System.out.println("a > 1");
} else if (b > 3) {
System.out.println("b > 3");
}
}
if (type == 2) {
if (b > 3) {
System.out.println("b > 3");
} else if (a > 1) {
System.out.println("a > 1");
}
}
【问题讨论】:
-
一个 switch 语句会稍微好一点。
-
一个 switch 语句可能吗?很难在这段代码中挑选出特别适合重构以使其“优雅”的模式。请记住,“优雅”和“优化”通常是对立的目标。
-
只有两个变量
a和b? -
@Bohemian♦ 实际项目中if语句中的三个条件,a和b只是为了说明
-
如果没有看到实际的代码(不是喜欢的实际代码),就很难给出重构的建议。这就像医生检查我姐姐看我是否健康。
标签: java if-statement optimization