gpt4 book ai didi

java - 在 Java 中使用 case 时使用 Break 的替代方法

转载 作者:行者123 更新时间:2023-12-02 08:38:11 26 4
gpt4 key购买 nike

是否有另一种方法可以在每种情况下跳过“中断”,并仅暗示当发现具有相同值的情况时就中断。

int w=3;
switch (w)
{
case 1:
System.out.println("1");
break;
case 2:
System.out.println("2");
break;
case 3:
System.out.println("3p");
break;
case 4:
System.out.println("4");
break;
default:
System.out.println("csd");
break;
}

最佳答案

不,break 不是可选的,除非您想跳到下一个 case 标签。 (好吧,除非你从case返回抛出。)但是请继续阅读...

如果您想避免编写 break,可以使用 if/else if/else 结构代替:

if (w == 1) {
System.out.println("1");
} else if (w == 2) {
System.out.println("2");
} else if (w == 3) {
System.out.println("3p");
} else if (w == 4) {
System.out.println("4");
} else {
System.out.println("csd");
}

但是:一次 JEP 325 JEP 354支持,您将能够使用switch表达式来代替:

switch (w) {
case 1 -> System.out.println("1");
case 2 -> System.out.println("2");
case 3 -> System.out.println("3p");
case 4 -> System.out.println("4");
default -> System.out.println("csd");
}

JEP 325 是 preview feature JDK 12.0.2 和 JEP 354(对其进行了轻微更新)是 JDK 13 中的预览功能。您可以使用它来编译代码,如下所示:

javac --enable-preview --release 13 Example.java

然后像这样运行:

java --enable-preview --release 13 Example

对于 JEP 325 使用版本 13,对于 JEP 354 使用版本 14。

除了上面的用法之外,switch 表达式的有趣之处在于它们是产生值的表达式。有关详细信息,请参阅 JEP。

关于java - 在 Java 中使用 case 时使用 Break 的替代方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58198685/

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