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

試験まであと何日とか、今年の残り日数などを知りたい場合には Calendar を使って計算できます。

1x1.trans - [Android] Calendar でイベントまでの日数計算


Android Studio
2021.2.1




Calendar

 

来年の12月24日まであと何日あるのかなど、結構面倒です。11月は30日しかないけど10月は31日で、あれうるう年って今年?など。
そういう時に便利なのがCalendarです。日数計算をしてくれますので。
 

 

getInstance()

 

CalendarにはクラスメソッドとしてgetInstance()があり、これを使ってインスタンスを取得します。 このメソッドは、カレンダフィールドが現在の日付と時刻で初期化されたCalendarオブジェクトを返してくれます。
 

 

日数計算のflow:

  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.xml

 
strings.xml

1x1.trans - [Android] Calendar でイベントまでの日数計算 

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

gregory カレンダーは考慮してありません
 
Reference:
Calendar | Android Developers

シェアする

  • このエントリーをはてなブックマークに追加

フォローする