Search

LocalDateTime

import java.time.LocalDateTime; import java.time.temporal.ChronoUnit; public class LocalDateTimeEx { public static void main(String[] args) { // LocalDateTime // : ๋‚ ์งœ์™€ ์‹œ๊ฐ„์„ ๋‹ค๋ฃจ๋Š” ํด๋ž˜์Šค๋กœ ํƒ€์ž„์กด์„ ํฌํ•จํ•˜์ง€ ์•Š๊ณ  ์‹œ์Šคํ…œ์˜ ๋‚ ์งœ/์‹œ๊ฐ„์„ ํ‘œํ˜„ํ•ฉ๋‹ˆ๋‹ค. // 2024๋…„ 8์›” 23์ผ 10์‹œ 0๋ถ„ 0์ดˆ LocalDateTime todayDateTime = LocalDateTime.of(2024, 8, 23, 10, 0, 0); System.out.println("์˜ค๋Š˜ : " + todayDateTime); // 2025๋…„ 2์›” 10์ผ 18์‹œ 20๋ถ„ 0์ดˆ LocalDateTime endDateTime = LocalDateTime.of(2025, 2, 10, 18, 20, 0); System.out.println("์ข…๊ฐ• : " + endDateTime); // A.isBefore(B) : A๊ฐ€ B๋ณด๋‹ค ์ด์ „์ด๋ฉด, true ์•„๋‹ˆ๋ฉด false // A.isEqual(B) : A๊ฐ€ B๋ณด๋‹ค ๊ฐ™์œผ๋ฉด, true ์•„๋‹ˆ๋ฉด false // A.isAfter(B) : A๊ฐ€ B๋ณด๋‹ค ์ดํ›„์ด๋ฉด, true ์•„๋‹ˆ๋ฉด false if( todayDateTime.isBefore(endDateTime) ) { System.out.println("๊ต์œก๊ณผ์ • ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค."); } else if( todayDateTime.isAfter(endDateTime) ) { System.out.println("๊ต์œก๊ณผ์ •์ด ์ข…๋ฃŒ๋˜์—ˆ์Šต๋‹ˆ๋‹ค."); } else { System.out.println("์˜ค๋Š˜์€ ์ฆ๊ฑฐ์šด ์ข…๊ฐ•๋‚ ์ž…๋‹ˆ๋‹ค."); } // until() // : LocalDateTime ๊ฐ์ฒด์˜ ๋‚ ์งœ/์‹œ๊ฐ„๋ถ€ํ„ฐ ์ธ์ž๋กœ ์ง€์ •ํ•œ ๊ฐ์ฒด์˜ ๋‚ ์งœ์‹œ๊ฐ„๊นŒ์ง€ // ๋‚จ์€ ์‹œ๊ฐ„์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ฉ”์†Œ๋“œ // * ChronoUnit : ๋‚ ์งœ/์‹œ๊ฐ„์˜ ๋‹จ์œ„๋ฅผ ๋‚˜ํƒ€๋‚ด๋Š” ์—ด๊ฑฐํƒ€์ž…(enum) // ๋‚ ์งœ/์‹œ๊ฐ„ ์ฐจ์ด๋ฅผ ๊ตฌํ•˜๊ฑฐ๋‚˜ ์กฐ์ž‘ํ•˜๋Š” ๋ฐ์— ์‚ฌ์šฉ long remainYear = todayDateTime.until(endDateTime, ChronoUnit.YEARS); long remainMonth = todayDateTime.until(endDateTime, ChronoUnit.MONTHS); long remainDay = todayDateTime.until(endDateTime, ChronoUnit.DAYS); long remainHour = todayDateTime.until(endDateTime, ChronoUnit.HOURS); long remainMinute = todayDateTime.until(endDateTime, ChronoUnit.MINUTES); long remainSecond = todayDateTime.until(endDateTime, ChronoUnit.SECONDS); System.out.println("*์˜ค๋Š˜๋ถ€ํ„ฐ ์ข…๊ฐ•๊นŒ์ง€"); System.out.println("๋‚จ์€ ์—ฐ๋„ : " + remainYear); System.out.println("๋‚จ์€ ๊ฐœ์›” ์ˆ˜ : " + remainMonth); System.out.println("๋‚จ์€ ์ผ ์ˆ˜ : " + remainDay); System.out.println("๋‚จ์€ ์‹œ : " + remainHour); System.out.println("๋‚จ์€ ๋ถ„ : " + remainMinute); System.out.println("๋‚จ์€ ์ดˆ : " + remainSecond); // between() // - ChronoUnit.์ƒ์ˆ˜.between(์‹œ์ž‘์ผ์ž, ์ข…๋ฃŒ์ผ์ž) // : ์‹œ์ž‘์ผ์ž์™€ ์ข…๋ฃŒ์ผ์ž์˜ ๋‚จ์€ ์‹œ๊ฐ„์„ ์ง€์ •ํ•œ ์ƒ์ˆ˜ ๋‹จ์œ„์— ๋งž๊ฒŒ ๋ณ€ํ™˜ํ•˜๋Š” ๋ฉ”์†Œ๋“œ remainYear = ChronoUnit.YEARS.between(todayDateTime, endDateTime); remainMonth = ChronoUnit.MONTHS.between(todayDateTime, endDateTime); remainDay = ChronoUnit.DAYS.between(todayDateTime, endDateTime); remainHour = ChronoUnit.HOURS.between(todayDateTime, endDateTime); remainMinute = ChronoUnit.MINUTES.between(todayDateTime, endDateTime); remainSecond = ChronoUnit.SECONDS.between(todayDateTime, endDateTime); System.out.println("*์˜ค๋Š˜๋ถ€ํ„ฐ ์ข…๊ฐ•๊นŒ์ง€ (ChronoUnit - between)"); System.out.println("๋‚จ์€ ๋…„๋„ : " + remainYear); System.out.println("๋‚จ์€ ๊ฐœ์›” ์ˆ˜ : " + remainMonth); System.out.println("๋‚จ์€ ์ผ ์ˆ˜ : " + remainDay); System.out.println("๋‚จ์€ ์‹œ : " + remainHour); System.out.println("๋‚จ์€ ๋ถ„ : " + remainMinute); System.out.println("๋‚จ์€ ์ดˆ : " + remainSecond); System.out.println(); // ๋‚ ์งœ/์‹œ๊ฐ„์„ ์กฐ์ž‘ LocalDateTime now = LocalDateTime.now(); System.out.println("ํ˜„์žฌ ๋‚ ์งœ/์‹œ๊ฐ„ : " + now); LocalDateTime targetTime = now.plusYears(1) .plusMonths(5) .plusDays(20) .plusHours(5) .plusMinutes(30) .plusSeconds(15) .minusYears(5) // minusXXX() ; // ๋นŒ๋” ํŒจํ„ด, (๋ฉ”์†Œ๋“œ ์ฒด์ด๋‹) System.out.println("๋ณ€๊ฒฝ ๋‚ ์งœ/์‹œ๊ฐ„ : " + targetTime); } }
Java
๋ณต์‚ฌ