获得月份为 01,02 而不是 1,2

Bax*_*tex 5 java android calendar

我正在使用日历类,更具体地说,我需要将所有 12 个月作为两个数字返回。

如果我使用以下代码:

 int month = (myCalendar.get(Calendar.MONTH)) +1;
Run Code Online (Sandbox Code Playgroud)

这是我在不同月份得到的结果:1、2、3、4、5、6、7、8、9、10、11、12

但我真正需要的是:01,02,03,04,05,06,07,08,09,10,11,12

这是因为我需要制作子字符串,如果我得到的整数数量会出错。有没有简单的方法来解决这个问题?

我可以使用 if 语句并检查整个日期是否只有 5 个数字,然后添加 0 和 3 位置,但感觉很麻烦。

BOU*_*lid 5

如果你不想尝试 if 语句试试这个

Date date = new Date();
String monthDateFormat = "MM";
SimpleDateFormat mdf = new SimpleDateFormat(monthDateFormat);
String month = mdf.format(date);
Run Code Online (Sandbox Code Playgroud)


Jon*_*ono 4

它加载为“1”而不是“01”的原因是因为它存储在 中int,请执行以下if语句:

String sMonth = "";
if (month < 10) {
    sMonth = "0"+String.valueOf(month);
} else {
    sMonth = String.valueOf(month);
}
Run Code Online (Sandbox Code Playgroud)

然后使用sMonth代替month.