חישוב תאריך בעתיד או בעבר

Java:
חישוב תאריך בעתיד או בעבר

איך לעשות:

התעלול הוא להשתמש בjava.time, ספריית הזמן החדשה בJava. קוד לדוגמה:

import java.time.LocalDate;
import java.time.Period;

public class DateCalc {
    public static void main(String[] args) {
        LocalDate today = LocalDate.now();
        Period tenDays = Period.ofDays(10);
        
        LocalDate futureDate = today.plus(tenDays);
        LocalDate pastDate = today.minus(tenDays);

        System.out.println("Today: " + today);
        System.out.println("10 days from now: " + futureDate);
        System.out.println("10 days ago: " + pastDate);
    }
}

תוצאה:

Today: 2023-04-12
10 days from now: 2023-04-22
10 days ago: 2023-04-02

עיון נוסף

במקום להשתמש בjava.util.Date הישן והפחות אינטואיטיבי, החל מ-Java 8 יש לנו את java.time. לפני החידוש הזה, היינו צריכים להילחם עם ה-API הישן של פעולות תאריך וזמן. כיום, ‘java.time’ מכילה אובייקטים כמו LocalDate, LocalTime, LocalDateTime, וZonedDateTime, שמאפשרים עבודה נוחה עם תאריכים וזמנים בצורה בטיחותית לאזורי זמן. אם אתם צריכים לחשב פערים גדולים של זמן או לעבוד עם זמנים מדויקים למילישניות, עליכם לבחור באובייקט מתאים ב-‘java.time’. לא מומלץ להשתמש במחלקות ישנות אלא אם כן אתם עובדים עם קוד שכבר כתוב ומתבסס עליהן.

גם כדאי לראות