Code chạy trên Eclipse hiển thị sai tháng

Mod thấy tiêu đề sai thì sửa giúp em, em cũng không biết ghi sao cho nó chuẩn.
Em có đoạn code hiển thị ngày:

package program.com;

import java.util.Calendar;

public class FormatDate {
	public static void main(String[] args) {	
		Calendar cal=Calendar.getInstance();
		//System.out.println(cal);
		System.out.print("Ngày "+cal.get(Calendar.DAY_OF_MONTH)+" Tháng "+cal.get(Calendar.MONTH)+" Năm "+cal.get(Calendar.YEAR));
	}
}

Khi chạy nó hiển thị ra:
Ngày 4 Tháng 2 Năm 2019
Máy tính em thì là tháng 4 tháng 3. Vậy là lỗi hay sao vậy ạ?

À rồi. Em hiểu rồi, nó tính từ 0-11.

Bạn tham khảo trang này: java.util.Calendar:

The first month of the year in the Gregorian and Julian calendars is JANUARY which is 0

Noi chung API java.util.Calendar được coi là deprecated rồi, tốt nhất bạn nên bắt đầu học java.time API luôn: https://docs.oracle.com/javase/tutorial/datetime/iso/index.html

3 Likes

Em mới tập tành học nên chưa biết nên học cái nào.

83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?