שימוש ב־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"));אתגר
קלצרו מתודה בשם processDateTime שמקבלת ארבעה ארגומנטים:
- מחרוזת (
dateTimeStr) בפורמט "yyyy-MM-dd HH:mm" - מספר שלם (
amount) שיש להוסיף או להחסיר - מחרוזת (
unit) שערכה הוא "hours", "days" או "months" - מחרוזת (
operation) שערכה הוא "add" או "subtract"
המתודה צריכה:
- לנתח את מחרוזת התאריך והשעה שהוזנה
- לבצע את הפעולה שצוינה
- להחזיר מידע מעוצב על התוצאה
ההודעות שיוחזרו צריכות להיות:
- אם הפורמט לא תקין: יש להחזיר "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));
}
}השיעור הזה כולל חידון קצר. התחילו את השיעור כדי לענות עליו ולעקוב אחרי ההתקדמות.
כל השיעורים ביחידה לוגיקה וזרימת תוכנית
1מערכים רב־ממדיים
יסודות מערכים דו־ממדייםגישה לאיברים במערך דו־ממדילולאות מקוננות עם מערכים דו־ממדייםסיכום — מערכים דו־ממדייםחיבור וחיסור מטריצותמערכים מדורגיםמערכים תלת־ממדיים ומעבר להםתבניות נפוצות במערכים דו־ממדייםסיכום — כל מה שצריך לדעת על מערכים4HashSet חלק 1
מהו HashSet?הוספת איברהסרת איברבדיקה אם איבר קייםבדיקת ריקנות וגודלניקוי ושכפולסיכום - HashSet10תאריך ושעה
יסודות LocalDateפעולות LocalTimeשימוש ב־LocalDateTimeתקופה ומשכי זמןעיצוב תאריכיםטיפול באזורי זמןתרגלו בעצמכם: קומפיילר Java אונליין