dd/mm/yyyy vs dd/MM/yyyy?

2019-02-05 01:35发布

SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
        String date = sdf.format(new Date()); 
        System.out.println(date); 

Result is todays date i.e 23/03/2014

But when i do

 SimpleDateFormat sdf = new SimpleDateFormat("dd/mm/yyyy"); 

result can be 23/05/2014, 23/05/2014, 23/06/2014 and son with each run of prgram. Why so?

3条回答
Summer. ? 凉城
2楼-- · 2019-02-05 02:19
1. d/D: day without 0 prefix on single digit. 
2. dd/DD: day with 0 prefix if single digit.
3. M: Month without 0 prefix on single digit.
4. MM: Month with 0 prefix if single digit.
5. yy/YY: Last two digit of year.
6. yyyy/YYYY: represents full year.
7. HH: 24 hour based hour. ie. 13:00. **H** will display hour without prefix 0 if single digit
8. hh: 12 hour based hour. ie. 01:00. **h** will display hour without prefix 0 if single digit
9. m: minute without 0 prefix on single digit. 
10.mm: minute with 0 prefix if single digit.
11.s: second without 0 prefix on single digit. 
12.ss: second with 0 prefix if single digit.
13.tt: represent the AM or PM
查看更多
戒情不戒烟
3楼-- · 2019-02-05 02:34

As we can see from the documentation, it's because mm is for minutes, not months.

查看更多
Lonely孤独者°
4楼-- · 2019-02-05 02:38

mm represents minutes, so when you use mm, it will print minutes instead of month.

While MM represents months.

Read more about Time Patterns

查看更多
登录 后发表回答