我是和日历类一起工作的,更确切地说,我需要把12个月作为两个数字回来。
如果我使用以下代码:
int month = (myCalendar.get(Calendar.MONTH)) +1;这是我在不同月份得到的: 1,2,3,4,5,6,7,8,9,10,11,12
但我真正需要的是:0102,03,04,05,06,07,08,09,10,11,12
这是因为我需要做子串,如果我得到的ints数会出错。有什么简单的方法可以解决这个问题吗?
我可以使用if语句,并检查整个日期是否只有5个数字,然后添加一个0和3位置,但它感觉坎伯斯通。
发布于 2016-05-28 13:28:38
它作为"1“而不是"01”加载的原因是因为它存储在int中,所以执行以下if语句:
String sMonth = "";
if (month < 10) {
sMonth = "0"+String.valueOf(month);
} else {
sMonth = String.valueOf(month);
}然后使用sMonth而不是month。
发布于 2016-05-28 13:35:51
如果您不想尝试If语句,请尝试如下
Date date = new Date();
String monthDateFormat = "MM";
SimpleDateFormat mdf = new SimpleDateFormat(monthDateFormat);
String month = mdf.format(date);发布于 2016-05-28 13:30:29
如果你想把它作为一个整数,你就不会得到前导零。将字符串变量赋值如下
String monthStr = month < 10 ? "0"+month : String.valueOf(month);
https://stackoverflow.com/questions/37499492
复制相似问题