java.util.Calendarよくある使い方 - Calendarの構築・設定
2009/02/25 14:52Update
本文はJava日付・時刻処理のjava.util.Calendarクラスのよくある使い方(Date型、long型、年、月、日、時刻から Calendarの構築(設定))について学びます。
Date型、long型、年、月、日、時刻から Calendarの構築(設定)するには、
java.util.Calendar#setTime(Date time)
java.util.Calendar#setTimeInMillis(long time)
java.util.Calendar#set(...)
などのメソッドを利用します。
java.util.Calendar#setメソッドについて、次の記事を合わせてご覧になってください。
java.util.Calendarよくある使い方 - 指定日時の年・月・日・時・分・秒の取得
サンプル
実行結果:
java.util.Calendar API仕様(Javadoc)
java.util.Calendar#setTime(Date time)
java.util.Calendar#setTimeInMillis(long time)
java.util.Calendar#set(...)
などのメソッドを利用します。
java.util.Calendar#setメソッドについて、次の記事を合わせてご覧になってください。
java.util.Calendarよくある使い方 - 指定日時の年・月・日・時・分・秒の取得
Calendarの構築・設定例
サンプル
import java.util.Calendar;
import java.util.Date;
public class TestCalendar {
/**
* java.util.Calendar
* 1)Date型、long型、年、月、日、時刻から Calendarの構築(設定)
*/
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance(); //現在(実行時点)時刻でCalendarのインスタンス生成
System.out.println("************日付設定前***************");
System.out.println(calendar.getTimeInMillis());
System.out.println(calendar.getTime());
System.out.println("************日付設定setTime(Date)***************");
//Date型からCalendarの構築
Date date = new Date();
calendar.setTime(date);
System.out.println(calendar.getTimeInMillis());
System.out.println(calendar.getTime());
System.out.println("************日付設定setTimeInMillis(Date)***************");
//long型からCalendarの構築
calendar.setTimeInMillis(date.getTime()+1000);
System.out.println(calendar.getTimeInMillis());
System.out.println(calendar.getTime());
System.out.println("************日付設定set(フィールド)***************");
//年、月、日、時刻からCalendarの構築
calendar.set(Calendar.YEAR, 2007); //2007年
calendar.set(Calendar.MONTH, 9); //10月(0..11)
calendar.set(Calendar.DAY_OF_MONTH, 30); //31日(0..30)
calendar.set(Calendar.HOUR, 23); //23時(0..23)
calendar.set(Calendar.MINUTE, 55); //59分(0..59)
calendar.set(Calendar.SECOND, 56); //59秒(0..59)
calendar.set(Calendar.MILLISECOND, 888); //999ミリ秒(0..999)
System.out.println(calendar.getTimeInMillis());
System.out.println(calendar.getTime());
}
}
実行結果:
************日付設定前***************
1235540290269
Wed Feb 25 14:38:10 JST 2009
************日付設定setTime(Date)***************
1235540290362
Wed Feb 25 14:38:10 JST 2009
************日付設定setTimeInMillis(Date)***************
1235540291362
Wed Feb 25 14:38:11 JST 2009
************日付設定set(フィールド)***************
1193799356888
Wed Oct 31 11:55:56 JST 2007
1235540290269
Wed Feb 25 14:38:10 JST 2009
************日付設定setTime(Date)***************
1235540290362
Wed Feb 25 14:38:10 JST 2009
************日付設定setTimeInMillis(Date)***************
1235540291362
Wed Feb 25 14:38:11 JST 2009
************日付設定set(フィールド)***************
1193799356888
Wed Oct 31 11:55:56 JST 2007
参考資料
java.util.Calendar API仕様(Javadoc)
Sponsored Link
- Relative Articles
- System.currentTimeMillis - 現在時刻を数値で取得 - (2009/02/10 11:59)
- java.util.Calendarよくある使い方 - 現在の日時取得 - (2009/02/25 11:33)
- java.util.Calendarよくある使い方 - 指定日時の年・月・日・時・分・秒の取得 - (2009/02/25 12:31)
- java.util.Calendarよくある使い方 - Calendarによる日付・日時を比較する - (2009/02/26 19:02)
- Java Calendar型で時間の差を求める例 - (2011/02/07 18:40)