So sánh time trong java minnisecond năm 2024

Java phân phối một số ít class tương quan tới thời hạn và lịch [ Calendar ], dưới đây là list những class này :

Class

Mô tả

java.util.DateMột lớp đại diện cho ngày tháng năm và thời gian. Tiếc là hầu hết các phương thức của nó đã bị lỗi thời, khuyến cáo là không nên sử dụng các phương thức đó, tuy nhiên lớp Date vẫn được sử dụng rỗng rãi.java.util.concurrent.TimeUnitTimeUnit là một Enum mô tả các đơn vị ngày tháng năm và thời gian.java.sql.DateMột lớp mô tả ngày tháng năm. Thông tin về thời gian bị cắt bỏ. Lớp này thường sử dụng trong JDBC.java.sql.TimeMột lớp mô tả thời gian [Giờ phút giây, milli giây], và không chứa thông tin ngày tháng năm.Lớp này thường sử dụng trong JDBC.java.sql.TimestampMột lớp mô tả ngày tháng năm và thời gian. Lớp này thường sử dụng trong JDBC.java.util.CalendarLớp mô tả bộ Lịch. Nó có các phương thức toán học về thời gian, chẳng hạn thêm ngày, bớt ngày,…java.util.GregorianCalendarLà một lớp con trực tiếp của java.util.Calendar, mô tả ngày Dương Lịch, bộ lịch được sử dụng rộng rãi trên thế giới ngày nay. Nó có tất cả các method từ java.util.Calendar để thao tác toán học trên ngày tháng năm và thời gian.java.util.TimeZoneTimeZone là lớp mô tả múi giờ, nó có ích khi bạn làm việc với Lịch trên múi giờ.java.text.SimpleDateFormatLớp này giúp bạn chuyển một String có định dạng ngày tháng sang kiểu Date và ngược lại

currentTimeMillis[] là một method tĩnh của class System. Nó trả về khoảng thời gian bằng mili giây tính từ ngày 1-1-1970 cho tới thời điểm hiện tại.

System.currentTimeMillis[] thường được sử dụng để đo khoảng thời gian làm một việc gì đó bằng cách gọi method này trước khi bắt đầu công việc, và sau khi hoàn thành công việc.

JobTimeDemo. java

package org.o7planning.tutorial.dt;
public class JobTimeDemo {
  // Đây là phương thức tính tổng các số từ 1 tới 100.
  private static int sum[] {
    int sum = 0;
    for [int i = 0; i  0 nghĩa là date1 > date2
    int i = date1.compareTo[date2];
    System.out.println["date1 compareTo date2 = " + i];
    // Kiểm tra xem date1 có đứng trước date2 không.
    boolean before = date1.before[date2];
    System.out.println["date1 before date2 ? " + before];
    // Kiểm tra xem date1 có đứng sau date2 không.
    boolean after = date1.after[date2];
    System.out.println["date1 after date2 ? " + after];
  }
}

Kết quả chạy ví dụ :


date1 compareTo date2 = -1
date1 before date2 ? true
date1 after date2 ? false

5- Date, Time, Timestamp [java.sql]

java.sql có 3 class liên quan tới ngày tháng và thời gian:

  • java.sql.Date
  • java.sql.Time
  • java.sql.Timestamp

Cụ thể :

  • java.sql.Date tương ứng với SQL DATE, nghĩa là nó chỉ lưu trữ năm, tháng, ngày và bỏ qua giờ phút giây, và milli giây. Thêm nữa java.sql.Date không chứa thông tin về múi giờ.
  • java.sql.Time tương ứng với SQL TIME và chỉ chứa các thông tin về giờ, phút, giây, milli giây.
  • java.sql.Timestamp tương ứng với SQL TIMESTAMP, nó chính xác tới nano giây [chú ý java.util.Date chỉ hỗ trợ tới milli giây!] với độ chính xác tùy biến.

Các class trên tham gia vào trong PreparedStatement trong JDBC API, chẳng hạn các method setDate, setTime, setTimestamp. Hoặc có thể lấy ra từ ResultSet.

Sơ lược về những bộ lịch :

Gregorian Calendar: Đây chính là Dương Lịch, còn gọi lịch Thiên chúa giáo, là lịch quốc tế. Nó được sử dụng rộng rãi nhất được đặt tên theo Đức Giáo Hoàng Gregory XIII, người đã giới thiệu nó vào năm 1582.

Buddhist Calendar: Đây là một bộ lịch phật giáo, thường được sử dụng tại một số nước Đông Nam Á trước kia như Thái Lan, Lào, Campuchia, cũng như Sri Lanka. Hiện nay lịch này được sử dụng trong các lễ hội phật giáo. Và không còn quốc gia nào sử dụng lịch này một cách chính thức, các quốc gia này đã đổi sang sử dụng Gregorian Calendar. Bạn có thể tham khảo thêm thông tin về lịch này tại:

Japanese Imperial Calendar: Đây là bộ lịch truyền thống của Nhật bản, hiện nay Nhật bản đã chuyển sang sử dụng dương lịch [Gregorian Calendar], tuy nhiên bộ lịch truyền thống vẫn được sử dụng một cách không chính thức.

Calendar là class mô phỏng một hệ thống Lịch.

Calendar có một vài class con:

  • GregorianCalendar
  • JapaneseImperialCalendar
  • BuddhistCalendar

Calendar là một class trừu tượng. Nghĩa là bạn không thể khởi tạo nó từ cấu tử [Constructor]. Tuy nhiên có 2 method tĩnh để tạo ra đối tượng Calendar.


public static Calendar getInstance[];
public static Calendar getInstance[TimeZone zone];
public static Calendar getInstance[Locale aLocale];
public static Calendar getInstance[TimeZone zone,Locale aLocale];

Ví dụ :


Distance time in milli second: 3

0

Khi bạn sử dụng Calendar.getInstance[TimeZone,Locale] sẽ nhận được trả về là một trong các class con nói trên. Mà hầu hết là trả về GregorianCalendar.

Gọi Calendar.getInstance[] trả về đối tượng Calendar với tham số TimeZone theo máy tính của bạn và Locale mặc định.

Chủ Đề