如何通过if语句获取我的新值

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

我正在尝试获得会议之前的天数,以便在新会议开始的那天打印出来,但我会继续获得整数而不是字符串。

import java.util.Scanner;
public class NextMeeting {
    public static void main(String [] args) {
        int day, daysToMeeting = 0;
        Scanner scan = new Scanner(System.in);

        System.out.println("Enter the day of the week 0-6: ");
         day = scan.nextInt();
        System.out.println("Enter the days to meeting: ");
        daysToMeeting = scan.nextInt();

        if (day == 0) {
            System.out.println("Today is Sunday");
        } else if (day == 1) {
            System.out.println("Today is Monday");
        }
        else if (day == 2) {
            System.out.println("Today is Tuesday");
        }
        else if (day == 3) {
            System.out.println("Today is Wednesday");
        }
        else if (day == 4) {
            System.out.println("Today is Thursday");
        }
        else if (day == 5) {
            System.out.println("Today is Friday");
        }
        else if (day == 6) {
            System.out.println("Today is Saturday");
        }

        System.out.println("Today is: " + day);


        if( daysToMeeting >= 6) {
            day = daysToMeeting - 7;
        }
        else {
            day = day + 6;
        }
        System.out.println("Days to the meeting is " + daysToMeeting + " +days.");
        System.out.println("Meeting day is : " + Integer.toString(day));
    }
}

几天的输出仍然是3,但我们需要在星期三打印出来。我不知道如何实现这一目标。

java if-statement switch-statement
3个回答
0
投票

你可以使用DayOfWeek枚举。

System.out.println("Meeting day is : " + DayOfWeek.of(day).toString());

您还可以删除嵌套的if-else语句并使用DayOfWeek枚举来显示“今天是xyz-day”。


0
投票

您正在打印整数,因为day是int。它可能是低效的,但一个简单的解决方法是创建一个String变量,并在daysToMeeting if-else块下面的另一个if语句块中,将String分配给每个相应的整数,例如

String meetingDay;
if(day == 1){
    meetingDay = "Monday";
}

然后使用String变量打印出来。

System.out.println("Meeting day is : " + meetingDay);

0
投票

只需创建一个方法,它将通过传递day int返回星期几的String。然后打印结果。

public String intToDayName(int day) {
            if(day > 6) {
                day = day % 7; 
            }
           if (day == 0) {

                return "Sunday"; 
            } else if (day == 1) {
                return "Monday";
            }
            else if (day == 2) {
                return "Tuesday"; 
            }
            else if (day == 3) {
                return "Wednesday";
            }
            else if (day == 4) {
                return "Thursday";
            }
            else if (day == 5) {
                return "Friday";
            }
            else if (day == 6) {
                return "Saturday";
            }
           return "Error";

    }

在你的版画中调用它:

System.out.println("Meeting day is : " + intToDayName(daysToMeeting));
System.out.println("Today is " + intToDayName(day));

如果你真的希望你的代码返回并打印第一个if-else语句,那么我建议循环。

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