java - 以更短的方式编写 Java 长 If/Else 循环
问题描述
大家好,我目前有一个任务,我刚刚完成,但他们的一个细节是我不喜欢的。有没有办法缩短 if else 循环
目前我已经写了
if (x >=300) {
set y = 1;
}
else if(x >=200) {
set y = 2;
}
else if (x >=150) {
set y = 3;
}
else if (x>=100) {
set y = 4;
}
else if (x >=50) {
set y = 5;
}
else if (x >=25) {
set y = 6;
}
可能我只是迂腐,提前谢谢
解决方案
这看起来像是一个可以使用 switch 语句的地方。但是,switch 语句旨在处理已知值而不是不等式。如果您不喜欢 if-else 语句链的外观,您可以在内联表达式(三元运算符)中完成所有操作,但这会使它难以阅读。
我会说保持代码原样,除非有充分的理由改变它。如果您只想在每个语句之后有一个代码语句,那么您可以去掉花括号 {} 以使代码看起来更简洁:
if (x >= 300) set y = 1;
else if (x >= 200) set y = 2;
else if (x >= 150) set y = 3;
else if (x >= 100) set y = 4;
else if (x >= 50) set y = 5;
else if (x >= 25) set y = 6;
推荐阅读
- google-sheets - 返回多个单个日期行中的最新值
- reactjs - Spread 运算符如何与 Redux Reducer 配合使用?
- wordpress - 如何使用序列化数据修复 WordPress option_value
- highcharts - 饼图变化
- javascript - React-hook-form 必须按两次才能删除输入的最后一个字符,两次才能输入第一个字符
- capacitor - 如何使用 Capacitor Browser API 访问浏览器中的 url
- odata - 未调用 SubmitChanges 后的成功回调 (SAPUI5 OData)
- windows - Git Subtree 在项目 .gitignore 文件上添加失败(使用 Windows)
- c# - 派生类字典
- json - 使用 bash 从 JSON 中提取值