Java时间格式的简单整理
1. 时间的表示
在Java中,时间可以用两种方式表示:
- 时间戳:从1970年1月1日00:00:00开始,到现在的毫秒数。
- 时间对象:用Java中的
Date
类表示。
在Java 8之前,时间的处理方式比较麻烦,需要使用Date
、Calendar
等类进行处理。不过在Java 8之后,引入了java.time
包,提供了一系列新的类和API,使时间处理更加方便和易于使用。
2. 时间格式化
在Java中,可以使用SimpleDateFormat
类对时间进行格式化。下面是一些常用的时间格式:
格式 | 描述 |
---|---|
yyyy | 年 |
MM | 月 |
dd | 日 |
HH | 24小时制的小时 |
hh | 12小时制的小时 |
mm | 分钟 |
ss | 秒 |
SSS | 毫秒 |
E | 星期几 |
例如,将时间戳转化为指定格式的字符串:
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestTimeFormat {
public static void main(String[] args) {
long timestamp = System.currentTimeMillis();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
String dateString = sdf.format(new Date(timestamp));
System.out.println(dateString); // 输出格式为“2022-08-14 18:32:45.828”
}
}
3. 时间解析
使用SimpleDateFormat
类还可以将字符串转换成时间。例如,将格式为“yyyy-MM-dd HH:mm:ss”类型的字符串解析成时间对象:
import java.text.SimpleDateFormat;
import java.util.Date;
public class TestTimeParse {
public static void main(String[] args) {
String dateString = "2022-08-14 18:32:45";
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
Date date = sdf.parse(dateString);
long timestamp = date.getTime();
System.out.println(timestamp); // 输出时间戳:1660581165000
} catch (Exception e) {
e.printStackTrace();
}
}
}
4. 总结
在使用Java处理时间时,需要清楚时间的表示方式和相应的格式化或解析方式。SimpleDateFormat
类提供了简单、方便的时间格式化和解析方式,但是需要注意线程安全的问题。如果需要更加严格的时间处理方式,可以使用java.time
包中的API进行处理。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:java时间格式的简单整理 - Python技术站