日付と時刻に関連するクラス


1.Dateクラス


Java.util packageが提供するクラスは、時間を節約できます.
ローカライズされたクラスは考慮されず、現在はほとんどの廃棄された機能が存在し、改善されたクラスカレンダークラスが提供されています.
public class DateTest{
	public static void main(String[] args){
		Date date = new Date();
        System.out.println(date.toString());
        System.out.println(date);
    }
}
Stringは大げさな状態でDate DatetoString()を使用して日付を出力できます.
単位Dateクラスは、希望するフォーマットで日付を出力しません.
public class DateTest{
	public static void main(String[] args){
    	Date date = new Date();
        SimpleDateFormat ft = new SimpleDateFormat("yyyy.MM.dd 'at' hh:mm:ss" a);
        //이때 생성자를 통해 날짜를 출력할 모양을 구현한다.
    	System.out.println(ft.format(date));
        //위에서 구현한 모양대로 날짜가 출력된다.
        
        System.out.println(date.getTime()); //long type 현재시간
    	long time = System.currentTimeMillis();
        System.out.println(time - date.getTime()); //위 시각에서 지나간 시간
    }
}
上記のように、日付は所望のフォーマットで出力され、longtypeのdateクラスを設定することで利用できます.

2.Calendarクラス


現在の日付を表すクラスで、ローカライズが考慮されています.
Calendarは基本的に抽象クラスであり,我々が実際に使用しているクラス(生成されたオブジェクト)はGregorian Calendarというサブクラスである.
その後、getInstanceメソッドを使用してCalendarオブジェクトを返し、日付に関連するメソッドを使用できます.
public class Calendar{
	public static void main(String[] args){
		Calendar cal = Calendar.getInstance();
        
        System.out.println(cal.get(Calendar.YEAR)); //년도
        System.out.println(cal.get(Calendar.MONTH)); //월
        System.out.println(cal.get(Calendar.DATE)); //일
        System.out.println(cal.get(Calendar.HOUR)); //시간(12진수)
        System.out.println(cal.get(Calendar.HOUR_OF_DAY)); //시간(24진수)
        System.out.println(cal.get(Calendar.MINUTE)); //분
    }
}
addメソッドを使用して特定の値を計算して出力することもできます.
public class Calendar{
	public static void main(String[] args){
		Calendar cal = Calendar.getInstance();
        
        cal.add(Calendar.HOUR, 5); //이후 HOUR에 5를 더해서 출력한다.
        System.out.println(cal.get(Calendar.HOUR));
    }
}
  • j
  • Calendar cal = Calendar.getInstance();        // Calendar클래스 생성
    
    int yyyy = cal.get(Calendar.YEAR);             
    int month = cal.get(Calendar.MONTH) + 1;      // 월은 0부터 시작합니다.
    int date = cal.get(Calendar.DATE);
    int hour = cal.get(Calendar.HOUR_OF_DAY);     // 하루를 24시간으로 표현한 시각
    int minute = cal.get(Calendar.MINUTE);

    3. java.タイムパッケージ


    既存のDate、Time APIの欠点を補い、直感性と使いやすさの高いクラスのパッケージ(ライブラリ)を提供します.
    java.timeが提供するクラスには様々な方法があり、これらの方法によって生成されたオブジェクト上の方法は静的に使用することができる.
    public class Calendar{
    	public static void main(String[] args){
        	LocalDateTime timepoint = LocalDateTime.now(); //현재 시간정보를 담은 객체 생성
            System.out.println(timepoint);
            
            LocalDateTime time = LocalDateTime.of(2012, Month.DECEMBER, 12) //지역 시간정보를 직접 대입할 수도 있음
            System.out.println(time); //2012-12-12
        	
        }
    }
    また、時間情報のみの出力、Stringタイプの時間情報オブジェクトの作成、地域時間の出力など、さまざまなオブジェクトを作成することもできます.
    LocalTime time1 = LocalTime.of(17:18) //17:18, 시간정보만 출력
    LocalTime time2 = LocalTIme.parse("10:15:30") //10:15:30 시간정보가 문자열 형태로 출력
    
    LocalDateTime timepoint = LocalDateTime.now();
    LocalDate localdate = timeout.toLocalDate(); //2022-02-03
    
    System.out.println(timepoint.getMonthValue()); //month type의 월 정보 출력
    System.out.println(timepoint.getMonthValue().getValue()); //int type의 월 정보 출력

    4.参考資料


    プログラマー講座-javaタイムパッケージ
    https://programmers.co.kr/learn/courses/9/lessons/266