猿问

是否可以在“if condition”中使用多个case来访问同一个函数

我需要为所有案例访问相同的函数,所以我在 if 条件中实现了多个案例。由于IDE为此抛出错误,很明显这是错误的实现。但是有什么东西可以替代这种逻辑。


爪哇


 void movie() {

                int m;

                System.out.println("Choose the movie :");

                System.out.println("1.BAHUBALI\n2.SHIVAAY\n3.DANGAL\n4.AIRLIFT");

                m =sc.nextInt();

          switch(m){

                if(case 1: || case 2: || case 3: || case 4:) {

                     Payment();

                }


                else {

                    System.out.println("Choosen an Invlid option");

                }

            }

        }


汪汪一只猫
浏览 173回答 2
2回答

回首忆惘然

试试这个:-switch (key) {        case 1:        case 2:        case 3:        case 4:             Payment();            break;        default:            System.out.println("Choosen an Invlid option");            break;        }

动漫人物

由于您在Integer此处进行比较,因此您可以使用Map将比较减少到仅一种条件。像下面这样&nbsp; &nbsp; Map<String, Integer> map = new HashMap<>();&nbsp; &nbsp; map.put("1", 1);&nbsp; &nbsp; map.put("2", 2);&nbsp; &nbsp; map.put("3", 3);&nbsp; &nbsp; map.put("4", 4);&nbsp; &nbsp; void movie() {&nbsp; &nbsp; int m;&nbsp; &nbsp; System.out.println("Choose the movie :");&nbsp; &nbsp; System.out.println("1.BAHUBALI\n2.SHIVAAY\n3.DANGAL\n4.AIRLIFT");&nbsp; &nbsp; m = sc.nextInt();&nbsp; &nbsp; if (map.containsKey(m)) {&nbsp; &nbsp; &nbsp; &nbsp; Payment();&nbsp; &nbsp; }&nbsp; &nbsp; else {&nbsp; &nbsp; &nbsp; &nbsp; System.out.println("Choosen an Invlid option");&nbsp; &nbsp; }}Map.containsKey :如果此映射包含指定键的映射,则返回 true。因此,最初我们将期望用户的值放入Mapobject 中,然后使用containsKey. 如果是然后调用,Payment()否则,打印一些消息
随时随地看视频慕课网APP

相关分类

Java
我要回答