解答例 - j2.lesson07.DaysLater

package j2.lesson07;

import java.io.*;
import java.util.Calendar;

/**
 * 課題2003 - 解答例.
 * 指定した日数後の日付を表示するプログラム.
 @author arakawa
 @version $Id: DaysLater_java.rps,v 1.1 2006/03/06 12:56:15 java2005 Exp $
 */
public class DaysLater {

    /**
     * 指定した日数後の日付を表示するプログラム。
     @param args 無視される
     @throws IOException 入力時に例外が発生した場合
     */
    public static void main(String[] argsthrows IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        // print "日数を入力:"
        System.out.print("日数を入力:");
        // days = コンソール入力 (int)
        int days = Integer.parseInt(reader.readLine());
        
        // if days が 0
        if (days == 0) {
            Calendar calendar = Calendar.getInstance();
            int y = calendar.get(Calendar.YEAR);
            int m = calendar.get(Calendar.MONTH1;
            int d = calendar.get(Calendar.DATE);
            // print "今日は" + (年) + "年" + (月) + "月" + (日) + "日", 改行
            System.out.println("今日は" + y + "年" + m + "月" + d + "日");
        }
        // else if days が正の値
        else if (days > 0) {
            Calendar calendar = Calendar.getInstance();
            calendar.add(Calendar.DATE, days);
            int y = calendar.get(Calendar.YEAR);
            int m = calendar.get(Calendar.MONTH1;
            int d = calendar.get(Calendar.DATE);
            // print days + "日後は" + (年) + "年" + (月) + "月" + (日) + "日", 改行
            System.out.println(days + "日後は" + y + "年" + m + "月" + d + "日");
        }
        // else if days が負の値
        else {
            // print "正の値を入力してください", 改行
            System.out.println("正の値を入力してください");
        }
    }

}