在 KISS 方面更可能使用哪个?

Pat*_*tel -4 java

我有两个功能。第一个:

public String getWeekDay(int day) {
    switch (day) {
        case 1:
            return "Monday";
        case 2:
            return "Tuesday";
        case 3:
            return "Wednesday";
        case 4:
            return "Thursday";
        case 5:
            return "Friday";
        case 6:
            return "Saturday";
        case 7:
            return "Sunday";
        default:
            throw new InvalidOperationException("day must be in range 1 to 7");
    }
}
Run Code Online (Sandbox Code Playgroud)

第二个:

public String getWeekDay(int day) {
    if ((day < 1) || (day > 7)) throw new InvalidOperationException("day must be in range 1 to 7");
    String[] days = {"Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday", "Sunday"};
    return days[day - 1];
}
Run Code Online (Sandbox Code Playgroud)

在我看来,两者都很简单并且做同样的事情,但是在 KISS 原则方面使用哪个更好?

mai*_*290 5

以上都不是,您将为此使用 anenum并且这些已经存在于 Java 8 中。

https://docs.oracle.com/javase/8/docs/api/java/time/DayOfWeek.html

  • @PathisPatel 无趣或不相关的问题(对于其他有类似问题的人)也可能会被否决。这里“征求意见”也许也是一个因素。就我个人而言,我认为大多数人认为风格上的差异并不重要。顺便说一句,使用“getDisplayName” (2认同)