gpt4 book ai didi

Java switch case - 默认与显式枚举

转载 作者:搜寻专家 更新时间:2023-10-31 08:18:15 25 4
gpt4 key购买 nike

我正在使用 Java 6。

假设我有一个包含 6 个值的枚举,按 A 到 F 的顺序排列。大约有 4 个值的处理方式相同。我可以这样写。

switch (whichType) {
case A:
case B:
case C:
case D:
return task();
case E:
return someothertask();
case F:
return anothersomeothertask();
}

或者像这样。

switch (whichType) {
case E:
return someothertask();
case F:
return anothersomeothertask();
default:
return task();
}

空值永远不会到达此开关。

就简洁和清晰而言,第二种方法更好。就明确性而言,我认为第一种方法更好。

每种方法还有其他优点/缺点吗?

另外,这个简单的问题有重复的风险,但我试过了,但在任何地方都找不到它。如果我搜索得不够好,我深表歉意。

最佳答案

如果该枚举绝对、肯定地永远固定在六个值,则两者都很好。否则,请考虑枚举的可能的第七个值。如果 E 和 F 是关于此 switch 逻辑的仅有的两个可能异常值,并且任何其他值将与 A 到 D 落在同一个桶中,请继续并使用 default。否则,每个值都有一个 case 会更安全。

关于Java switch case - 默认与显式枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4653887/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com