test/langtools/tools/javac/switchexpr/ExpressionSwitch.java
changeset 52794 e4ba5414c8b4
parent 51563 de411d537aae
child 53023 6879069d9d94
equal deleted inserted replaced
52793:df065f8356d7 52794:e4ba5414c8b4
    21         check(T.C, "other");
    21         check(T.C, "other");
    22         assertEquals(exhaustive1(T.C), "C");
    22         assertEquals(exhaustive1(T.C), "C");
    23         assertEquals(scopesIsolated(T.B), "B");
    23         assertEquals(scopesIsolated(T.B), "B");
    24         assertEquals(lambdas1(T.B).get(), "B");
    24         assertEquals(lambdas1(T.B).get(), "B");
    25         assertEquals(lambdas2(T.B).get(), "B");
    25         assertEquals(lambdas2(T.B).get(), "B");
       
    26         assertEquals(convert1("A"), 0);
       
    27         assertEquals(convert1("B"), 0);
       
    28         assertEquals(convert1("C"), 1);
       
    29         assertEquals(convert1(""), -1);
       
    30         assertEquals(convert2("A"), 0);
       
    31         assertEquals(convert2("B"), 0);
       
    32         assertEquals(convert2("C"), 1);
       
    33         assertEquals(convert2(""), -1);
    26         localClass(T.A);
    34         localClass(T.A);
    27     }
    35     }
    28 
    36 
    29     private String print(T t) {
    37     private String print(T t) {
    30         return switch (t) {
    38         return switch (t) {
    74             case B: { break () -> "B"; }
    82             case B: { break () -> "B"; }
    75             default: break () -> "default";
    83             default: break () -> "default";
    76         };
    84         };
    77     }
    85     }
    78 
    86 
       
    87     private int convert1(String s) {
       
    88         return switch (s) {
       
    89             case "A", "B" -> 0;
       
    90             case "C" -> { break 1; }
       
    91             default -> -1;
       
    92         };
       
    93     }
       
    94 
       
    95     private int convert2(String s) {
       
    96         return switch (s) {
       
    97             case "A", "B": break 0;
       
    98             case "C": break 1;
       
    99             default: break -1;
       
   100         };
       
   101     }
       
   102 
    79     private void localClass(T t) {
   103     private void localClass(T t) {
    80         String good = "good";
   104         String good = "good";
    81         class L {
   105         class L {
    82             public String c() {
   106             public String c() {
    83                 STOP: switch (t) {
   107                 STOP: switch (t) {