Java-具有实例化变量的枚举开关

问题描述 投票:0回答:1

给出下面的代码:

    public class Practice1 {

       public enum Dogs {collie, harrier};

         public static void main(String[] args) {
             Dogs myDog = Dogs.collie;

          switch (myDog) {
          case collie:
              System.out.println("collie ");
          case harrier:
              System.out.println("harrier ");
           }
       }
}

输出为

    collie
    harrier

为什么当Dogs myDog = Dogs.collie时会打印出两种情况?我意识到没有间断,但不应该只打印collie

此外,使用Dogs myDog = Dogs.harrier,它仅打印harrier

enums switch-statement instantiation
1个回答
0
投票

我找到了答案。

如果没有休息,将执行所有剩余的情况,这就是为什么Dogs myDog = Dogs.harrier仅打印harrier

© www.soinside.com 2019 - 2024. All rights reserved.