LoginSignup
0
0

More than 1 year has passed since last update.

[Java]日付に関する型の変換まとめ

Posted at

はじめに

今回はJavaの日付に関する型の変換についてまとめようと思います。

Date型とCalendar型

Date型は、日時を扱う際に使用する日付型のクラスです。日時に関するざまざまな処理が可能となります。
Calendar型は、Data型同様日時を扱う際に使用する日付型のクラスです。しかし、Date型よりも加算・減算、日時を比較するなどの処理に特化したクラスになります。

String型とDate型

String型→Date型

  1. はじめにSimpleDateFormatクラスで日付のフォーマットを指定する。
  2. parse(String型)メソッドにより変換
  3. 例外処理する必要あり(ParseException)
public class FormatChange  {
    public static void main(String[] args) throws ParseException{
        // 日付の定義
        String strDate = "2021/5/21";
        // SimpleDateFormatで日付フォーマット設定
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        // parse()メソッドで変換
        Date Datedate = sdf.parse(strDate);
        // Date型で出力
        System.out.println(Datedate); // =>Fri May 21 00:00:00 JST 2021
    }
}

Date型→String型

  1. はじめにSimpleDateFormatクラスで日付のフォーマットを指定する。
  2. format(Date型)メソッドにより変換
public class FormatChange  {
    public static void main(String[] args){
        // 現在の日付を取得
        Date Datedate = new Date();
        // SimpleDateFormatで日付フォーマット設定
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
        // format()メソッドで変換
        String strDate = sdf.format(Datedate);
        // String型で出力
        System.out.println(strDate); // =>2021/05/21
    }
}

Date型とCalendar型

Date型→Calendar型

  1. Date型のインスタンス生成
  2. Calendar型のインスタンス生成
  3. setTime(Date型)メソッドにより変換
public class FormatChange  {
    public static void main(String[] args) throws ParseException{
        // 現在の日付をDate型で取得
        Date Datedate = new Date();
        // Calendar型のインスタンス生成
        Calendar calendar = Calendar.getInstance();
        // setTime()メソッド変換
        calendar.setTime(Datedate);
                // Calendar型で出力
        System.out.println(calendar); // =>java.util.GregorianCalendar[time=1621525339771,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Tokyo",offset=32400000,dstSavings=0,useDaylight=false,transitions=10,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2021,MONTH=4,WEEK_OF_YEAR=21,WEEK_OF_MONTH=4,DAY_OF_MONTH=21,DAY_OF_YEAR=141,DAY_OF_WEEK=6,DAY_OF_WEEK_IN_MONTH=3,AM_PM=0,HOUR=0,HOUR_OF_DAY=0,MINUTE=42,SECOND=19,MILLISECOND=771,ZONE_OFFSET=32400000,DST_OFFSET=0]
    }
}

Calendar型→Date型

  1. Calendar型のインスタンス生成
  2. getTime(Calendar型)メソッドにより変換
public class FormatChange  {
    public static void main(String[] args) throws ParseException{
        // 現在の日付をDate型で取得
        Calendar calendar = Calendar.getInstance();
        // getTime()メソッドで変換
        Date date = calendar.getTime();
        // Date型で出力
        System.out.println(date); // =>Fri May 21 00:50:15 JST 2021
    }
}

参考ページ

Javaの日付データ型変換(Date, Calendar, String)

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0