
package javacodebook.core.datemath;

import java.util.Date;
import java.util.Calendar;

/**
 *
 * @author  Mark Donnermeyer
 */
public class Starter {
    
    public static void main(String[] args) {
        
        // Einen Tag zum heutigen Tag hinzurechnen
        Date tomorrow = new Date();
        long delta = 1*24*60*60*1000;  // 1 Tag in Millisekunden
        tomorrow.setTime(tomorrow.getTime()+delta);
        System.out.println("Morgen ist " + tomorrow);
        
        System.out.println("--- Addition von Zeitangaben ---");
        // Addieren eines Tages, eines Monats und eines Jahres zum akt. Datum
        Calendar cal = Calendar.getInstance();
        System.out.println(cal.getTime());
        cal.add(Calendar.DAY_OF_MONTH, 1);
        System.out.println(cal.getTime());
        cal.add(Calendar.MONTH, 1);
        System.out.println(cal.getTime());
        cal.add(Calendar.YEAR, 1);
        System.out.println(cal.getTime());
        
        System.out.println("--- Addition von Monaten ---");

        cal.set(Calendar.MONTH, 2);
        cal.set(Calendar.DAY_OF_MONTH, 31);
        System.out.println(cal.getTime());
        cal.roll(Calendar.MONTH, 1);
        System.out.println(cal.getTime());
        cal.roll(Calendar.MONTH, 1);
        System.out.println(cal.getTime());
        
        System.out.println("--- Unterschied add() und roll() ---");
        Calendar cal2 = Calendar.getInstance();
        System.out.println(cal2.getTime());
        cal2.add(Calendar.MONTH, 13);
        System.out.println(cal2.getTime());
        cal2.roll(Calendar.MONTH, 13);
        System.out.println(cal2.getTime());
    }
    
}
