日、月、年を入力して翌日の日付を計算して出力するJavaプログラム(クラスNextDay)を記述する必要があります。翌日のJavaアプリケーション
サンプルコールと出力:
Actual Date 12.12.2004
The next day is the 13.12.2004.
入力も正しいかどうかチェックする必要があります!誤った日付配座(例えば、32 12 2007)が入力された場合、例外InvalidDateArgumentsException
がスローされる。クラスjava.lang.Exception
のサブクラスとして適切な形式でこのクラスを定義します。
私はそれを作成し始めましたが、問題はあります。私は<かスイッチのステートメントで>私は何をすればいいのでしょうか?ここに私のクラスは次のとおりです。
public class Date {
private int day;
private int month;
private int year;
public Date(int day, int month, int year) {
this.day = day;
this.month = month;
this.year = year;
}
public Date getNextDay() throws Exception {
if (isLeapYear() == true) {
switch (month) {
case 1:
day = 31;
break;
case 2:
day = 29;
break;
case 3:
day = 31;
break;
case 4:
day = 30;
break;
case 5:
day = 31;
break;
case 6:
day = 30;
break;
case 7:
day = 31;
break;
case 8:
day = 31;
break;
case 9:
day = 30;
break;
case 10:
day = 31;
break;
case 11:
day = 30;
break;
case 12:
day = 31;
break;
}
}
return new Date(day + 1, month, year);
}
public int getDay() {
return day;
}
public int getMonth() {
return month;
}
public int getYear() {
return year;
}
public boolean isLeapYear() {
if (year % 4 == 0 && year % 100 != 0 && year % 400 == 0) {
return true;
}
return false;
}
public String toString() {
return this.day + "." + this.month + "." + this.year;
}
}
...私たちは標準クラス
あなたがスイッチケースを使用する必要がある場合は、あなたが設定し、それを使用する必要がありますを使用することはできませんので、
public class NextDay {
public static void main(String args[]) throws Exception {
Date dateObj = new Date(20, 5, 2016);
System.out.println("Old Date: " + dateObj.getDay() + "." + dateObj.getMonth() + "." + dateObj.getYear() + ".");
System.out.println("The next day is " + dateObj.getNextDay().toString() + ".");
}
}
だろうが、彼らは私がスイッチケースにやるべきことを私に言った、そのために私の大学、私は初心者プログラマです私たちはスイッチケースを学んでいます。 – meert
独自の 'Date'クラスを定義する必要がありますか? 'java.util.Date'が存在すると、あなたは –
を知っていません。私は推測する必要はありません。 – meert