LocalDateTime 사용법
Coddy Java 여정의 논리와 흐름 섹션에 포함된 레슨 — 59개 중 56번째.
Java의 LocalDateTime은 날짜와 시간을 모두 결합합니다. 이벤트 일정이나 타임스탬프와 같이 두 구성 요소를 모두 다룰 때 유용합니다.
현재 날짜와 시간 생성
LocalDateTime now = LocalDateTime.now();특정 날짜와 시간을 생성하세요:
LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
// 2024-03-15 14:30위의 코드를 실행한 후, dateTime에는 다음이 포함됩니다:
2024-03-15T14:30
날짜와 시간을 포맷하세요:
LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
String formatted = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"));챌린지
쉬움processDateTime이라는 이름의 메서드를 생성하세요. 이 메서드는 네 개의 인수를 받습니다:
- 형식 "yyyy-MM-dd HH:mm"의 String (
dateTimeStr) - 더하거나 뺄 정수 (
amount) - "hours", "days", 또는 "months" 중 하나의 String (
unit) - "add" 또는 "subtract" 중 하나의 String (
operation)
메서드는 다음을 수행해야 합니다:
- 입력된 날짜 시간 문자열을 파싱하세요
- 지정된 작업을 수행하세요
- 결과에 대한 형식화된 정보를 반환하세요
반환 메시지는 다음과 같아야 합니다:
- 잘못된 형식인 경우: "Invalid date time format"을 반환하세요
- 잘못된 단위인 경우: "Invalid unit"을 반환하세요
- 잘못된 작업인 경우: "Invalid operation"을 반환하세요
- 성공한 경우: "Original: [datetime], New: [new_datetime], Day: [day_name]"을 반환하세요
치트 시트
LocalDateTime은 Java에서 날짜와 시간을 모두 결합합니다.
현재 날짜와 시간 생성:
LocalDateTime now = LocalDateTime.now();특정 날짜와 시간 생성:
LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
// 결과: 2024-03-15T14:30날짜와 시간 형식 지정:
LocalDateTime dateTime = LocalDateTime.of(2024, 3, 15, 14, 30);
String formatted = dateTime.format(DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm"));직접 해보기
import java.util.Scanner;
import java.time.LocalDateTime;
import java.time.format.DateTimeFormatter;
import java.time.format.DateTimeParseException;
public class Main {
public static String processDateTime(String dateTimeStr, int amount, String unit, String operation) {
// 여기에 코드를 작성하세요
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String dateTimeStr = scanner.nextLine();
int amount = Integer.parseInt(scanner.nextLine());
String unit = scanner.nextLine();
String operation = scanner.nextLine();
System.out.println(processDateTime(dateTimeStr, amount, unit, operation));
}
}이 레슨에는 짧은 퀴즈가 포함되어 있습니다. 레슨을 시작해 문제를 풀고 진행 상황을 기록하세요.