Java函数如何获取当前时间并格式化为指定格式?
发布时间:2023-06-26 06:14:34
Java中可以通过java.util.Date和java.text.SimpleDateFormat两个类来获取和格式化当前时间。
1. 获取当前时间
获取当前时间可以使用java.util.Date类的无参构造方法,代码如下:
Date date = new Date();
这样就可以获取到当前时间,但是Date对象只能获取当前精确到毫秒的时间,如果需要更精细的时间信息,可以使用java.time包中的类。
2. 格式化时间
使用java.text.SimpleDateFormat类可以对日期进行格式化,可以按照指定格式输出,代码如下:
Date date = new Date();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String strDate = sdf.format(date);
System.out.println(strDate);
这样就可以将当前时间按照指定的格式输出了。
3. 常用时间格式
常用的时间格式有很多种,下面列举几种常用的格式:
格式 | 描述
----|------
yyyy-MM-dd | 年-月-日
yyyy年MM月dd日 | 年月日
yyyy-MM-dd HH:mm:ss | 年-月-日 时:分:秒
HH:mm:ss | 时:分:秒
4. 注意事项
在使用SimpleDateFormat类时需要注意以下几点:
- 在进行日期格式化时,必须按照指定的格式进行。
- 在进行日期格式化时,需要通过setLenient(false)方法设置为非宽松模式,以保证格式一致性。
- 在进行日期格式化时,需要注意线程安全问题,可以使用ThreadLocal来解决。
5. 示例代码
下面是一个完整的示例代码:
import java.text.SimpleDateFormat;
import java.util.Date;
public class TimeFormatDemo {
public static void main(String[] args) {
// 获取当前时间
Date date = new Date();
// 格式化时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String strDate = sdf.format(date);
System.out.println(strDate);
}
}
以上就是获取和格式化当前时间的方法,希望对你有所帮助。
