Menu
Coddy logo textTech

שימוש ב־LocalDateTime

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Java של Coddy. שיעור 56 מתוך 59.

LocalDateTime ב-Java משלב גם תאריך וגם שעה. הוא שימושי כשצריך לעבוד עם שני הרכיבים, כמו בלוחות זמנים של אירועים או בחותמות זמן.

יצירת התאריך והשעה הנוכחיים

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"));
challenge icon

אתגר

קל

צרו מתודה בשם processDateTime שמקבלת ארבעה ארגומנטים:

  1. מחרוזת ( dateTimeStr ) בפורמט "yyyy-MM-dd HH:mm"
  2. מספר שלם ( amount ) שיש להוסיף או להחסיר
  3. מחרוזת ( unit ) שערכה הוא "hours", "days" או "months"
  4. מחרוזת ( operation ) שערכה הוא "add" או "subtract"

המתודה צריכה:

  1. לנתח את מחרוזת התאריך והשעה שהוזנה
  2. לבצע את הפעולה שצוינה
  3. להחזיר מידע מעוצב על התוצאה

ההודעות שיוחזרו צריכות להיות:

  • אם הפורמט לא תקין: יש להחזיר "Invalid date time format"
  • אם היחידה לא תקינה: יש להחזיר "Invalid unit"
  • אם הפעולה לא תקינה: יש להחזיר "Invalid operation"
  • במקרה של הצלחה: יש להחזיר "Original: [datetime], New: [new_datetime], Day: [day_name]"

נסו בעצמכם

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));
    }
}
quiz iconבחנו את עצמכם

השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: קומפיילר Java אונליין