繁体   English   中英

有没有办法用类似 lambda 的语法为默认情况做 switch 表达式 fallthrough?

[英]Is there a way to do switch expression fallthrough with lambda-like syntax for default case?

我正在尝试做的是这样的事情,其中特定值和默认情况都可以将 map 转换为单个值。 我应该澄清一下,这样做的目的是尽可能明确。 我知道仅使用默认值即可实现相同的功能结果。

return switch(value) {
    case "A" -> 1;
    case "B" -> 2;
    case "ALL"
    default -> -1;
};

对于已经处于预览阶段的开关模式匹配,这将成为可能。

因此,当您使用--enable-preview时,以下内容有效:

return switch(value) {
    case "A" -> 1;
    case "B" -> 2;
    case "ALL", default -> -1;
};

将 default 与 case 组合是不可能的,而且是多余的(那为什么是 case 呢?),但是可以将 case 与 lambda 组合:

return switch (value) {
    case "A", "B" -> 1;
    default -> -1;
};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM