java - 如何优化有关 if 条件的逻辑?
问题描述
这是一些逻辑。我可以优化这个吗?
for (List<String> sublist: list){
for (String string: sublist){
if(condition1){
if(condition2){
if(!condition3){
c();
condition3 = true;
}
} else {
c();
}
} else {
Log();
}
}
}
非常感谢。它有 3 个条件,但我使用函数 c() 两次。最后,我找到了最好的:
for (List<String> sublist: list){
for (String string: sublist){
if(condition1){
if(condition2){
if(condition3) continue;
condition3 = true;
}
c();
} else {
Log();
}
}
}
解决方案
老实说,这在我看来没问题。但是,如果你真的想把第三个if
语句弄平,你可以这样做:
if (condition1) {
if (!condition2 || !condition3) {
c();
}
if (condition2 && !condition3) {
condition3 = true;
}
} else {
Log();
}
推荐阅读
- ios - GitHub CocoaPods 与 CocoaPod Repository Pods 冲突
- r - 在 Highcharter 中向黑白柱形图添加图案填充
- c++ - LNK2019 错误,即使所有文件都添加到项目中
- powershell - 通过快捷键或命令行/shell 从 Windows 桌面运行 Power Automate 流
- typescript - 在 vue typescript 的 *.d.ts 文件中添加的命名空间在没有显式导入的情况下无法识别
- php - php smarty检查表单
- javascript - 多重渲染问题以及如何在这里使用 useEffect
- php - 在php中创建字母列表
- flutter - 由于 Cruise 依赖 intl >=0.17.0-nullsafety 需要 SDK 版本 >=2.11.0-180.0.dev <3.0.0,版本解析失败
- visual-c++ - Visual Studio 使用 C++ 非常慢