“我记得我想告诉你一些关于约会的事情。”
“您已经告诉我 Java 有 Date 类,我可以使用该类来处理日期。”
“嗯。好吧,Date 类已经过时了一段时间了。”
“现在建议改用 Calendar 类,它有一个返回当前日期的 getTime() 方法。”
“这是一个通常创建的日历对象:”
Calendar cal = Calendar.getInstance();
“当您调用此方法时,会根据您的计算机设置创建正确的日历。”
“‘正确’的日历?也就是说有好几个?”
“是的。嗯,说'相关'会更准确。事实是地球上没有一个,而是许多日历。几乎每一个都与某个宗教或国家有关。”
“年份可能会有所不同,具体取决于您所在的国家/地区。”
“这里是最常见的日历示例。”
日历类 | 日历名称 |
---|---|
公历 | 基督教公历 |
佛历 | 佛历 |
日本皇历 | 日本皇历 |
“还有中国历法、伊斯兰历法等等。”
“我懂了。”
“要获取当前日期,您需要编写如下代码:”
Calendar cal = Calendar.getInstance();
Date date = cal.getTime();
“Calendar 类有许多方法可以让您快速获取有关日期和时间的任何信息。”
代码 | 评论 |
---|---|
|
年月 月日_ 星期几(周一、周二、周三……) 时 分秒 _ |
“有时你真的只需要获取一些可用信息。例如,当前年份或星期几。”
“但有时你只需要以正确的格式显示日期。”
“例如,在日志文件或其他地方。”
“或者做一个用户可以自定义的格式,那你怎么办?”
“为此也有特殊的类。SimpleDateFormat类非常适合您描述的任务:”
Calendar calendar = Calendar.getInstance();
DateFormat formatter = new SimpleDateFormat("MM-DD-YY");
String message = formatter.format(calendar.getTime());
“啊,我记得了。关于SimpleDateFormat,你已经跟我解释了一些,但我真的记不太清了。”
“这一切都非常简单。您创建一个SimpleDateFormat对象并将您想要获得的日期模式传递给它。然后您调用格式方法,它会以所需的形式为您提供传递的日期。”
“听起来很有趣。我想要更多细节。”
“给你。细节。这里有一些可以在日期模式中使用的字母:”
信 | 描述 |
---|---|
G | 替换为纪元(AD 或 BC) |
是 | 换成年份 |
米 | 换成月份 |
w | 一年中的第几周 |
W | 一个月中的第几周 |
丁 | 一年中的天数 |
d | 每月的第几天 |
F | 一个月中的星期几 |
乙 | 一周中的天 |
A | 上午/下午(中午之前或之后) |
H | 24 小时格式的小时 (0-23) |
k | 24 小时格式的小时 (1-24) |
钾 | 12 小时格式的小时 (0-11) |
H | 12 小时格式的小时 (1-12) |
米 | 分钟 |
秒 | 秒 |
小号 | 毫秒 |
z | 时区,格式如下:太平洋标准时间,PST |
Z | 时区,格式如下:-0800/td> |
“太棒了!这就是你需要的一切。”
“重复这些字母仍然存在一些细微差别。”
“如果你写 YY,你会得到年份的最后两位数字。如果你写 YYYY,你会得到年份的所有四位数字。”
“月份也有些复杂。MM是月份的数字。MMM是月份的三个字母缩写,即Jan、Feb、Mar、Apr、May等。MMMM代表月份的全称”
“您还可以显示一周中的全天(使用 EEEE)或仅显示前两个字母(使用 EE)。”
“谢谢,Rishi。这个 SimpleDateFormat 类真的很有用。现在我知道了。”
“享受使用吧!祝你好运!”
GO TO FULL VERSION