ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 날짜 클래스 (자바 8 이후)
    Java 2023. 6. 27. 00:44

    LocalDate

    로컬 날짜 클래스

    LocalDate nowDate = LocalDate.now();
    LocalDate date = LocalDate.of(int year, int month, int dayOfMonth)
    • now() : 기본 시간대의 시스템 시계에서 현재 날짜를 가져옴
    • of() : 년, 월, 일에서 인스턴스를 가져옴

     


    LocalDate nowDate = LocalDate.now();
    LocalDate date = LocalDate.of(2023, 1, 1);
    
    System.out.println(nowDate);
    System.out.println(date);
    2023-06-26
    2023-01-01

     

     

     

    LocalTime

    로컬 시간 클래스

    LocalTime nowTime = LocalTime.now();
    LocalTime time = LocalTime.of(int hour, int minute, int second, int nanoOfSecond)
    • now() : 기본 시간대의 시스템 시계에서 현재 시간을 가져옴
    • of() : LocalTime시간, 분, 초 및 나노초에서 인스턴스를 가져옴

     


    LocalTime nowTime = LocalTime.now();
    LocalTime time = LocalTime.of(12, 26, 2, 9);
    
    System.out.println(nowTime);
    System.out.println(time);
    18:31:02.982530500
    12:26:02.000000009

     

     

    LocalDateTime

    로컬 날짜 및 시간 클래스

    LocalDateTime nowDateTime = LocalDateTime.now();
    LocalDateTime dateTime = LocalDateTime.of(int year, int month, int dayOfMonth, int hour, int minute, int second, int nanoOfSecond);
    • now() : 기본 시간대의 시스템 시계에서 현재 날짜-시간을 가져옴
    • of() : 년, 월, 일, 시, 분, 초 및 나노초에서 인스턴스를 가져옴

     


    LocalDateTime nowDateTime = LocalDateTime.now();
    LocalDateTime dateTime = LocalDateTime.of(2023, 1, 1, 12, 26, 2, 9);
    
    System.out.println(nowDateTime);
    System.out.println(dateTime);
    2023-06-26T18:49:04.183542
    2023-01-01T12:26:02.000000009

     

     

    ZonedDateTime

    ISO-8601 캘린더 시스템에서 타임존의 날짜/시간

    ZonedDateTime nowZone = ZonedDateTime.now();
    
    System.out.println(nowZone);
    2023-06-26T22:23:25.631014900+09:00[Asia/Seoul]

     

     

    ZoneId

    타임존 ID

    • getAvailableZoneIds() : 사용 가능한 타이존 ID들 가져옴
    • from() : 시간 객체에서 타임존 ID를 가져옴
    • of() : 유효한 타임존 ID인지 판별
    ZonedDateTime nowZone = ZonedDateTime.now(ZoneId.of("America/Los_Angeles"));
    
    System.out.println(nowZone);
    2023-06-26T06:44:57.322317600-07:00[America/Los_Angeles]

     

     

    DateTimeFormatter

     날짜 포맷 변경

    LocalDate nowdate = LocalDate.now();
    DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy/MM/dd");
    String formatStr = nowdate.format(formatter);
    System.out.println(formatStr);
    
    String str = "2023년 01월 01일 12시 26분 02초";
    DateTimeFormatter dateTimeFormatter = DateTimeFormatter.ofPattern("yyyy년 MM월 dd일 HH시 mm분 ss초");
    LocalDateTime localDateTime = LocalDateTime.parse(str, dateTimeFormatter);
    System.out.println(localDateTime);
    2023/06/27
    2023-01-01T12:26:02

     

     

    DayOfWeek

    요일을 가져옴

    LocalDate date = LocalDate.of(2023, 1, 1);
    DayOfWeek dayOfWeek = date.getDayOfWeek();
    System.out.println(dayOfWeek);
    System.out.println(dayOfWeek.getValue());
    SUNDAY
    7

     

     

    출처 :

    https://docs.oracle.com/javase/8/docs/api/java/time/package-summary.html

    https://scshim.tistory.com/251

     

    'Java' 카테고리의 다른 글

    Set  (0) 2023.06.27
    List  (0) 2023.06.27
    Map  (0) 2023.06.26
    slf4j log4j logback log4j2  (0) 2023.01.27
    래퍼(Wrapper) 클래스  (0) 2023.01.01
Designed by Tistory.