java - 使用 ifelse 显示工作日

标签 java if-statement calendar

我正在编写此代码,通过使用 if else 语句从主函数调用它来显示工作日,但我无法显示星期一之后的日子。似乎 if-else 语句的其余部分没有被调用。请帮忙..

public class WeekdayName {

    public static String weekday_name(int weekday) {
        String result = "";

        if ( weekday == 1 ) {
            result = "Sunday";
        } else if ( weekday == 2 ) {
            result = "Monday";
        } else if ( weekday == 3 ) {
            result = "Tuesday";
        } else if ( weekday == 4 ) {
            result = "Wednesday";
        } else if ( weekday == 5 ) {
            result = "Thursday";
        } else if ( weekday == 6 ) {
            result = "Friday";
        } else if ( weekday == 7 ) {
            result = "Saturday";
        } else if ( weekday == 0 ) {
            result = "Sunday";
        } else {
            result = "ERROR";
        }
        return result;
    }

    public static void main( String[] args ) {

        System.out.println( "Weekday 1: " + weekday_name(1) );
        System.out.println( "Weekday 2: " + weekday_name(2) );
        System.out.println( "Weekday 3: " + weekday_name(3) );
        System.out.println( "Weekday 4: " + weekday_name(4) );
        System.out.println( "Weekday 5: " + weekday_name(5) );
        System.out.println( "Weekday 6: " + weekday_name(6) );
        System.out.println( "Weekday 7: " + weekday_name(7) );
        System.out.println( "Weekday 0: " + weekday_name(0) );
        System.out.println();
        System.out.println( "Weekday 43: " + weekday_name(43) );
        System.out.println( "Weekday 17: " + weekday_name(17) );
        System.out.println( "Weekday -1: " + weekday_name(-1) );

        Calender calender = new GregorianCalender();
        int dayofWeek = calender.get(Calender.DAY_OF_WEEK);

        System.out.println( "\nToday is a " + weekday_name(dayofWeek) + "!" );
    }

}

请大家帮忙...

最佳答案

1.您有一个拼写错误。这是日历而不是日历

2.输出为:

Weekday 1: Sunday
Weekday 2: Monday
Weekday 3: Tuesday
Weekday 4: Wednesday
Weekday 5: Thursday
Weekday 6: Friday
Weekday 7: Saturday
Weekday 0: Sunday

Weekday 43: ERROR
Weekday 17: ERROR
Weekday -1: ERROR

Today is a Saturday!

看来它对我有用。

3.最好使用switch语句。它更短、更优雅,看起来:

public static String weekday_name( int weekday )
{
    switch (weekday) {
        case 1: return "Sunday";
        case 2: return "Monday";
        case 3: return "Tuesday";
        case 4: return "Wednesday";
        case 5: return "Thursday";
        case 6: return "Friday";
        case 7: return "Saturday";
        case 0: return "Sunday";
        default: return "ERROR";
    }
}

输出也相同:)

关于java - 使用 ifelse 显示工作日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35382570/

相关文章:

java - 如何使用 ExecutorService 管理未知数量的 Callables 的返回值?

javascript - 我的 if/else 语句怎么了?

python 重复程序而为真

java - 动态设置 jTextField 值

java - 如何在 Java 中创建基于模板的文件?

java - ActiveMQ ProducerFlowControl 如何用于异步主题?

java - 您好,我似乎无法打印使用 DrawingPanel 比较三个圆圈大小的程序的结果

java - 将日历时间从java转换为EDM

PHP - 类似银行的每月交易

c# - 使用 ical 事件格式的 asp.net 中的服务器端日历控件