Ngày giờ trong Java - Tìm hiểu cách tạo ngày giờ trong Java
15/04/2021 02:12
Ngày và giờ đóng một vai trò quan trọng trong cuộc sống của chúng ta và là yếu tố cần thiết được sử dụng trong mọi công nghệ trên thế giới. Ngày, giờ được xem là nhân tố then chốt trong mọi hệ thống giao dịch. Do tính thiết yếu của nó, làm việc với ngày giờ là điều kiện quan trọng trong lập trình Java. Trong bài viết dưới đây, bạn sẽ nghiên cứu cách ngôn ngữ lập trình Java tạo điều kiện cho chúng ta khi làm việc với Ngày và Giờ, cùng các phương thức để định dạng ngày giờ trong Java. Giờ thì cùng thảo luận về ngày giờ trong Java ngay bây giờ bạn nhé!
Tìm hiểu về ngày giờ trong Java
Ngày giờ trong Java - Lớp ngày (Date class)
Java đi kèm với lớp Date nằm trong gói java.util và cung cấp nhiều phương thức để thực hiện các hoạt động với ngày và giờ. Lớp Date trong Java sẽ thi hành các giao diện có thể sao chép, nối tiếp và so sánh.
Phương thức khởi tạo của lớp Date ngày giờ trong Java
Có 6 phương thức của lớp Date nhưng 4 trong số chúng không thể sử dụng được nữa, do vậy chúng ta sẽ tìm hiểu 2 phương thức còn lại dưới đây:
Date(): Đây là phương thức khởi tạo không tham số của lớp Date và được sử dụng để khởi tạo đối tượng lớp Date với ngày và giờ hiện tại.
Date: Phương thức khởi tạo có hàm số của lớp Date và chúng ta sẽ truyền một hàm số tới nó trong dạng mili giây. Hàm tạo này tạo cho chúng ta một đối tượng của lớp Date cho phần mili giây đầu vào tính từ nửa đêm ngày 1/1/1970.
Phương thức của lớp Date
STT |
Phương thức |
Mô tả phương thức |
1 |
boolean after(Date date) |
Phương thức này trả về true nếu đối tượng hiện tại của lớp Date chứa ngày muộn hơn ngày được chỉ định trong tham số của phương thức, nếu không nó sẽ trả về false |
2 |
boolean before(Date date) |
Phương thức này trả về true nếu đối tượng hiện tại của lớp Date chứa ngày sớm hơn ngày được chỉ định trong tham số của phương thức, nếu không nó trả về fasle |
3 |
Object clone( ) |
Phương thức này tạo ra một bản sao của đối tượng mà lớp Date đang gọi |
4 |
int compareTo(Date date) |
Phương thức này được sử dụng để so sánh giá trị của đối tượng đang gọi với ngày được chỉ định. Nó trả về 0 nếu các giá trị bằng nhau, một giá trị âm nếu đối tượng gọi sớm hơn 1 ngày và giá trị dương nếu đối tượng gọi muộn hơn 1 ngày |
5 |
int compareTo(Object obj) |
Phương thức này hoạt động giống với phương thức compareto(date) nếu đối tượng thuộc loại Date. Nếu không, nó sẽ ném ClassCastException |
6 |
boolean equals(Object date) |
Phương thức này trả về true nếu đối tượng đang gọi của lớp Date chứa cùng ngày và giờ với đối tượng được chỉ định theo ngày, nếu không, nó trả về false. |
7 |
long getTime( ) |
Phương thức này trả về số mili giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970. |
8 |
int hashCode( ) |
Phương thức này cung cấp giá trị mã băm cho đối tượng Ngày đang gọi. |
9 |
void setTime(long time) |
Phương pháp này được sử dụng để đặt thời gian và ngày theo thời gian được chỉ định, biểu thị thời gian đã trôi qua tính bằng mili giây kể từ nửa đêm, ngày 1 tháng 1 năm 1970. |
10 |
String toString( ) |
Trả về biểu diễn Chuỗi của đối tượng lớp Ngày đang gọi. |
Lấy ngày và giờ của hệ thống trong Java
Chúng ta có thể dễ dàng truy xuất ngày và giờ hiện tại của hệ thống bằng hai cách:
- Sử dụng lớp Ngày (Date)
- Sử dụng lớp Lịch (Calendar)
Cách lấy ngày giờ của hệ thống Java
Sử dụng lớp Date trong Java
Đây là phương thức dễ nhất để lấy được ngày và giờ hiện tại của hệ thống. Chúng ta có thể tạo đối tượng của lớp Date và gọi phương thức toString () từ đối tượng này để lấy ngày giờ hiện tại.
Code để lấy ngày giờ hiện tại bằng cách sử dụng lớp Date:
package com.techvidvan.dateandtime;
import java.util.Date;
public class DateDemo {
public static void main(String args[]) {
// Instantiating a Date object
Date date = new Date();
// display time and date using toString() method
System.out.println("The current date and time is: ");
System.out.println(date.toString());
}
}
Output:
The current date and time is:
Tue Apr 07 03:20:26 IST 2020
>>> Tham khảo: Khóa học lập trình Java
Sử dụng lớp Calendar - tạo ngày giờ trong Java
Chúng ta có thể sử dụng lớp Lịch để lấy ngày và giờ hiện tại bằng cách tạo thể hiện của lớp Calendar bằng phương thức getInstance() và sau đó gọi phương thức getTime() để lấy ngày và giờ hiện tại.
package com.techvidvan.dateandtime;
import java.util.Date;
import java.util.Calendar;
public class CalendarDemo {
public static void main(String args[]) {
// Instantiating a Calendar object
Calendar c = Calendar.getInstance();
// displaying the time and date using getTime()
System.out.println("The current date and time is: ");
System.out.println(c.getTime());
}
}
Output
The current date and time is:
Tue Apr 07 03:29:04 IST 2020
>>> Đọc thêm: Annotation trong Java - Nằm lòng cách sử dụng Annotation
Định dạng ngày sử dụng lớp SimpleDateFormat - ngày giờ trong Java
Chúng ta cũng có thể lấy Ngày và giờ ở định dạng mong muốn bằng cách sử dụng lớp SimpledateFormat, là một lớp cụ thể cho phép chúng ta định dạng và phân tích cú pháp ngày và giờ theo cách mong muốn. Lớp này nằm trong gói java.text.
Mã để định dạng ngày và giờ bằng cách sử dụng lớp SimpleDateFormat
package com.techvidvan.dateandtime;
import java.util.Date;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class GettingCurrentDate {
public static void main(String[] args) {
//getting current date and time using Date class
System.out.println("Using Date class:");
System.out.println("The formatted date and time is:");
DateFormat df = new SimpleDateFormat("dd/MM/yy HH:mm:ss");
Date dateobj = new Date();
System.out.println(df.format(dateobj));
//getting current date time using calendar class
System.out.println("\nUsing Calendar class:");
System.out.println("The formatted date and time is:");
Calendar calobj = Calendar.getInstance();
System.out.println(df.format(calobj.getTime()));
}
}
Output:
Using Date class:
The formatted date and time is:
07/04/20 04:10:28
Using Calendar class:
The formatted date and time is:
07/04/20 04:10:28
Kết luận: Trên đây là một số kiến thức về ngày giờ trong Java và các ví dụ để tạo ngày giờ trong Java. Hy vọng bạn có thể áp dụng các thông tin này trong quá trình làm việc với Java. Cùng tìm hiểu thêm về Java và các ngôn ngữ lập trình khác qua các khóa học lập trình tại T3H bạn nhé!