Java日期处理:Date与SimpleDateFormat类的使用

需积分: 12 2 下载量 138 浏览量 更新于2024-07-20 收藏 510KB PPTX 举报
"Java中表示时间的类" 在Java编程中,处理日期和时间是常见的需求,Java提供了多种类来支持这一功能。其中,`java.util.Date` 和 `java.text.SimpleDateFormat` 是两个核心的类,它们帮助我们创建、格式化以及解析日期和时间。 `java.util.Date` 类是Java中用来表示特定瞬间的类,即从标准纪元(1970年1月1日 00:00:00 GMT)到现在的毫秒数。当你创建一个Date对象时,它会默认表示当前时间。例如: ```java Date date = new Date(); // 创建表示当前时间的Date对象 ``` 然而,直接打印Date对象会得到一种不太直观的格式,例如"Wed Jun 11 09:22:30 CST 2014"。为了使日期输出更符合我们的日常习惯,可以借助 `java.text.SimpleDateFormat` 类来进行格式化。 `java.text.SimpleDateFormat` 是一个具体的类,用于日期和时间的格式化,即把日期或时间对象转换为字符串,或者将字符串解析为日期。它使用模式字符串来定义日期和时间的格式。例如,如果你想将日期格式化为"2014-06-11 09:22:30",你可以这样做: ```java SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); String today = sdf.format(date); // 将日期对象转换为指定格式的字符串 System.out.println(today); // 输出转换后的字符串 ``` 在这里,模式字符串中的"yyyy"代表四位数的年份,"MM"代表两位数的月份,"dd"代表两位数的日期,"HH"代表24小时制的小时,"mm"代表分钟,"ss"表示秒。`format()` 方法就是用于将日期对象按照指定的模式转换成字符串。 反之,如果你有一个符合特定格式的日期字符串,想要解析成Date对象,可以使用 `SimpleDateFormat` 的 `parse()` 方法: ```java String dayStr = "2014年02月14日10:30:25"; SimpleDateFormat df = new SimpleDateFormat("yyyy年MM月dd日HH:mm:ss"); try { Date parsedDate = df.parse(dayStr); // 解析字符串为日期对象 } catch (ParseException e) { e.printStackTrace(); } ``` `parse()` 方法会尝试根据指定的模式将输入的字符串转换为Date对象。需要注意的是,由于日期字符串的解析可能会抛出 `ParseException`,因此通常需要将其置于try-catch块中。 `java.util.Date` 和 `java.text.SimpleDateFormat` 在Java中是处理日期和时间的核心工具,它们帮助开发者灵活地处理和展示日期时间信息。通过结合使用这两个类,可以满足大部分日期时间相关的格式化和解析需求。