java switch多值匹配怎样实现

   2024-09-30 3720
核心提示:在 Java 中,switch 语句不支持多值匹配。但是,你可以使用以下几种方法来实现类似的功能:使用多个 if-else 语句:int value =

在 Java 中,switch 语句不支持多值匹配。但是,你可以使用以下几种方法来实现类似的功能:

使用多个 if-else 语句:
int value = 2;if (value == 1 || value == 3) {    System.out.println("Value is 1 or 3");} else if (value == 2 || value == 4) {    System.out.println("Value is 2 or 4");} else {    System.out.println("Value is not 1, 2, 3, or 4");}
使用 Map 结构:
import java.util.HashMap;import java.util.Map;import java.util.function.Consumer;public class MultiValueSwitch {    public static void main(String[] args) {        int value = 2;        Map<Integer, Consumer<Integer>> actions = new HashMap<>();        actions.put(1, v -> System.out.println("Value is 1"));        actions.put(2, v -> System.out.println("Value is 2"));        actions.put(3, v -> System.out.println("Value is 3"));        actions.put(4, v -> System.out.println("Value is 4"));        if (actions.containsKey(value)) {            actions.get(value).accept(value);        } else {            System.out.println("Value is not 1, 2, 3, or 4");        }    }}
使用 switch 表达式(仅适用于 Java 12 及更高版本):
int value = 2;String result = switch (value) {    case 1, 3 -> "Value is 1 or 3";    case 2, 4 -> "Value is 2 or 4";    default -> "Value is not 1, 2, 3, or 4";};System.out.println(result);

请注意,这些方法并不是真正的 switch 多值匹配,而是使用其他结构来实现类似的功能。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号