[Android] Calendar でイベントまでの日数計算

試験まであと何日とか
今年の残り日数などの計算をしたい場合
Calendarを使ってできます
 
下はオリンピックまでの日数を計算した例です
 
calendar_1

Android Studio 2.1.1
Android 6.0

 

Calendar

 

  1. Calendar に目標の日時を設定する
    • set(int year, int month, int date)
  2. その日時のミリ秒を取り出す
    • getTimeInMillis()
  3. 現在時刻をミリ秒で取り出す
  4. 差分の日数を計算

 
Calendar の set メソッドでの日時の設定は
4通りほどありますが、2番目の
年、月、日 の設定を使います
尚、MONTHは1月が0となるので注意
Ref: Java Platform Standard Ed.6
 

 
MainActivity.java

 
activity_main.java

 
現在時刻は
Calendar calendar = Calendar.getInstance()
でも取れますが、ミリ秒で計算したいので
System.currentTimeMillis()
を使いました

gregory カレンダーは考慮してありません