SimpleDateFormat设置日期格式

SimpleDateFormat设置日期格式

public class Main {
    public static void main(String[] args) throws IllegalAccessException, InstantiationException, NoSuchMethodException, InvocationTargetException, ParseException {
        SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy:MM:dd-HH:mm:ss");
        Date date = simpleDateFormat.parse("2018:3:17-13:32:11");//把满足sdf日期格式的时间字符串转换为Date类型
        System.out.println(date);
        long time = date.getTime();//得到这个时间距离1970年的毫秒数
        Date date1 = new Date(time+1000);//多一秒
        System.out.println(date1);
    }
}
### Java 中 `SimpleDateFormat` 的日期格式化教程 #### 创建 `SimpleDateFormat` 对象并指定模式 为了使用 `SimpleDateFormat` 进行日期格式化,需要先创建一个 `SimpleDateFormat` 对象,并为其提供一个字符串形式的模式。该模式定义了如何显示日期和时间[^1]。 以下是常见的日期和时间格式字符及其含义: - **年份**: 使用 `y` 表示年份。 - **月份**: 使用 `M` 或 `MM` 表示月份(单个字母表示不补零,两个字母表示两位数)。 - **日**: 使用 `d` 或 `dd` 表示天数。 - **小时 (12 小时制)**: 使用 `h` 或 `hh` 表示小时。 - **小时 (24 小时制)**: 使用 `H` 或 `HH` 表示小时。 - **分钟**: 使用 `m` 或 `mm` 表示分钟。 - **秒**: 使用 `s` 或 `ss` 表示秒数[^3]。 下面是一个典型的例子: ```java import java.text.SimpleDateFormat; import java.util.Date; public class DateFormatExample { public static void main(String[] args) { // 定义日期格式模式 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); // 获取当前时间 Date now = new Date(); // 格式化当前时间为字符串 String formattedDate = sdf.format(now); // 输出结果 System.out.println("Formatted Date: " + formattedDate); } } ``` 运行上述程序会输出类似于以下的结果: ``` Formatted Date: 2019-07-24 19:58:55 ``` #### 动态更改日期格式 如果希望动态调整日期格式,则可以使用 `applyPattern()` 方法重新设置格式模式[^2]。例如: ```java import java.text.SimpleDateFormat; import java.util.Date; public class SimpleDateFormatDemo2 { public static void main(String[] args) { // 当前时间对象 Date date = new Date(); // 初始化 SimpleDateFomat 实例 SimpleDateFormat simpleDateFormat = new SimpleDateFormat(); // 设置新的日期格式模式 simpleDateFormat.applyPattern("yyyy/MM/dd HH:mm:ss"); // 格式化日期为字符串 String format = simpleDateFormat.format(date); // 打印结果 System.out.println(format); } } ``` 此代码片段展示了如何通过 `applyPattern()` 来改变现有的日期格式模式。 #### 注意事项 尽管 `SimpleDateFormat` 是一种常用的工具类用于处理日期格式化操作,但它存在一些缺点需要注意: - 非线程安全:多个线程共享同一个实例可能导致数据竞争问题[^4]。 - 已被更现代的方式取代:自 JDK 8 开始引入了更加灵活且线程安全的新 API (`DateTimeFormatter`) 推荐优先考虑新方式实现相同功能。 ### 总结 以上介绍了关于 `SimpleDateFormat` 基本用法以及其常见注意事项等内容。对于初学者来说掌握这些基础知识已经足够应对日常开发需求中的大部分场景。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值