2024-07-11
한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina
Η Java 8 έχει βελτιώσει πλήρως την επεξεργασία του χρόνου και έχει επανασχεδιάσει όλα τα API ημερομηνίας και ώρας, ημερολογίου και χρόνου. Και τοποθετήστε τα ομοιόμορφα κάτω από το πακέτο και το υπο-πακέτο java.time.
Μειονεκτήματα της Java5:
java.util.Date
Δεν είναι ασφαλές για νήματα και πρέπει να χειρίζεστε μόνοι σας ζητήματα ταυτόχρονης χρήσης πολλαπλών νημάτων όταν χρησιμοποιείτε αυτήν την κλάση.java.util.Date
Η προεπιλεγμένη ημερομηνία, έτος είναι από1900
Έναρξη, μήνα από 1
έναρξη, ημέρα από 0
Αρχικά, δεν υπάρχει ομοιομορφία.καιDate
Η τάξη δεν διαθέτει επίσης σχετικές μεθόδους για τον άμεσο χειρισμό ημερομηνιών.Σχέδιο βελτίωσης για Java8:
API
Είναι ασφαλές για το νήμα όχι μόνο δεν είναιsetter
μέθοδος και οποιεσδήποτε αλλαγές στο στιγμιότυπο θα επιστρέψουν ένα νέο στιγμιότυπο, διασφαλίζοντας παράλληλα ότι το αρχικό στιγμιότυπο παραμένει αμετάβλητο.ΤοπικήΗμερομηνία: Χρησιμοποιείται για την αναπαράσταση μιας ημερομηνίας χωρίς ζώνη ώρας, για παράδειγμα: 2024-07-06.
import java.time.LocalDate;
import java.time.Month;
public class LocalDateExample {
public static void main(String[] args) {
// 获取当前日期
LocalDate today = LocalDate.now();
System.out.println("当前日期: " today);
// 创建指定日期
LocalDate specificDate = LocalDate.of(2024, Month.JULY, 6);
System.out.println("指定日期: " specificDate);
// 日期操作示例
LocalDate tomorrow = today.plusDays(1);
System.out.println("明天的日期: " tomorrow);
}
}
// 输出
当前日期: 2024-07-06
指定日期: 2024-07-06
明天的日期: 2024-07-07