数组作为交换机语句的选项

Dou*_*ler 2 java enums switch-statement

我记得从大学回来时使用带有'二分搜索'或'二进制切换'的开关.类似的东西,我的谷歌foo今天破了.无论如何,它会像这样下降:你定义了一个可能的选项数组(通常是字符串),一些魔法发生,并且数组中的那些选项成为切换中发生的情况.我确实记得他们必须按字母顺序才能工作.你能帮我记住魔法吗?即使是我应该关注的名字也会很棒.

tva*_*son 10

我认为你要找的是一个Enum.

从上面的链接...

public enum Day {
    SUNDAY, MONDAY, TUESDAY, WEDNESDAY, 
    THURSDAY, FRIDAY, SATURDAY 
}

public class EnumTest {

    Day day;

    public EnumTest(Day day) {
        this.day = day;
    }

    public void tellItLikeItIs() {
         switch (day) {
            case MONDAY:
                 System.out.println("Mondays are bad.");
                 break;

            case FRIDAY:
                 System.out.println("Fridays are better.");
                 break;

            case SATURDAY:
            case SUNDAY:
                 System.out.println("Weekends are best.");
                 break;

            default:
                 System.out.println("Midweek days are so-so.");
                 break;
        }
    }

    ....
}
Run Code Online (Sandbox Code Playgroud)