我想以MM-dd-yy格式显示当前日期
Date d1=new Date();
现在我想换成mm-dd-yy模式
所以我使用简单的日期格式
格式化它SimpleDateFormat simpleDateFormat = new SimpleDateFormat(MM-dd-yyyy);
模式 现在d1是字符串类型,但我希望它作为日期类型
答案 0 :(得分:2)
这是模型和视图之间的区别。
此处的模型是Date对象(Date date = new Date();
)它包含有关创建日期的月,日,年,小时等的信息。它对格式化一无所知。
视图是DateFormat对象生成的字符串。您可以将模型(日期对象)传递给格式化程序,以便根据您感兴趣的字段以及您希望它们呈现的方式生成模型的多个视图。
因此,无论格式化程序为其生成什么字符串,日期都会继续保持相同的日期字段。日期和格式化字符串是单独的对象。虽然我们说“格式化日期”,但格式化实际上并没有以任何方式更改日期对象。
您的格式字符串不正确,要获得您想要的月份“MM-dd-yyyy”,“mm”表示分钟。请参阅the API documentation for SimpleDateFormat以查看不同模式字母的含义。