Java日期时间及日期相互转换实现代码

下面是“Java日期时间及日期相互转换实现代码”的完整攻略:

1. Java日期时间基础

Java 日期时间类是 Java API 内置的类,主要包括以下两个部分:

  • 日期类:Date 类是 JDK 1.0 中的类,主要用于表示日期和时间。
  • 日期格式类:DateFormat 是格式化日期时间的抽象类,它可以将 Date 类型的时间格式化为指定格式的字符串,也可以将字符串解析为 Date 类型的时间。

基于这两个类,我们可以基础常见的日期时间操作,例如:

  • 获取当前时间
  • 获取指定时间
  • 时间比较
  • 格式化时间
  • 解析时间字符串

2. Java日期时间示例

下面是两个 Java 日期时间的示例:

示例1:获取当前时间并格式化

获取当前时间,并将日期时间格式化为 "yyyy-MM-dd HH:mm:ss" 格式的字符串。

import java.text.SimpleDateFormat;
import java.util.Date;

public class DateUtils {
    public static void main(String[] args) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String currentTime = sdf.format(new Date());
        System.out.println("当前时间为:" + currentTime);
    }
}

输出:

当前时间为:2022-07-08 21:42:36

示例2:将字符串解析为Date格式

将格式为 "yyyy-MM-dd" 的字符串解析为 Date 类型,同时输出其毫秒数。

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

public class DateUtils {
    public static void main(String[] args) {
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
        String dateStr = "2022-07-08";
        try {
            Date date = sdf.parse(dateStr);
            System.out.println(dateStr + " 的毫秒数为:" + date.getTime());
        } catch (ParseException e) {
            e.printStackTrace();
        }
    }
}

输出:

2022-07-08 的毫秒数为:1657276800000

3. Java日期时间格式转换

基于 Date 和 DateFormat 类的基础操作,我们可以实现各种不同的日期时间格式转换,例如将时间戳转化为日期字符串等。

下面是一个示例,将时间戳转化为格式为 "yyyy-MM-dd HH:mm:ss" 的日期时间字符串:

import java.text.SimpleDateFormat;

public class DateUtils {
    public static void main(String[] args) {
        long timestamp = 1657276800000L;
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String datetimeStr = sdf.format(new Date(timestamp));
        System.out.println("时间戳 " + timestamp + " 对应的日期时间为:" + datetimeStr);
    }
}

输出:

时间戳 1657276800000 对应的日期时间为:2022-07-08 00:00:00

除了这个示例,还可以实现各种比较复杂的日期时间格式转换,例如将不同时区的日期时间转换为本地时间等。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Java日期时间及日期相互转换实现代码 - Python技术站

(0)
上一篇 2023年5月20日
下一篇 2023年5月20日

相关文章

  • Java8 接口默认方法和静态方法

    当我们在定义接口时,可能会希望在接口中提供一些默认实现,这样我们在实现该接口时可以选择性地重写它们,也可以直接继承实现。Java 8 引入了接口默认方法和静态方法来实现这个目的。 接口默认方法 接口默认方法是 Java 8 新增的特性,可以直接在接口中实现方法。这些方法会被自动继承到实现该接口的所有类上。 语法格式: public interface 接口名…

    Java 2023年5月26日
    00
  • Spring中数据访问对象Data Access Object的介绍

    Spring中的数据访问对象Data Access Object DAO的含义 数据访问对象(Data Access Object)是一种数据持久层的设计模式,用于处理数据库的数据访问。 DAO的优点 DAO模式在Spring框架中使用最广泛,它将数据库访问代码从业务逻辑中分离出来,使得代码逻辑更加清晰,易于维护和扩展。 使用DAO模式的优点如下: 将数据库…

    Java 2023年5月20日
    00
  • SpringBoot教程_创建第一个SpringBoot项目

    以下是创建第一个SpringBoot项目的完整攻略,包含两条示例: 一、前置条件 在开始创建SpringBoot项目之前,请确认你已经完成以下步骤: 安装好Java开发环境。建议使用JDK8及以上版本。 安装好Maven构建工具。 二、创建SpringBoot项目 1. 使用Spring Initializr创建项目 首先,我们使用Spring Initia…

    Java 2023年5月15日
    00
  • java信号量控制线程打印顺序的示例分享

    Java信号量是一种同步原语,用于控制线程并发访问资源的数量。Java信号量的主要作用是保护临界区,以确保在任何时刻只有特定数量的线程可以访问该区域。在这里,我们将分享一个Java信号量控制线程打印顺序的示例,该示例演示如何使用Java信号量来协调多个线程以按特定顺序打印。 1. 示例一 在这个示例中,我们将创建两个线程,一个线程负责打印奇数,另一个线程负责…

    Java 2023年5月26日
    00
  • Java中的IllegalStateException是什么?

    Java中的IllegalStateException 在Java编程中,当我们的应用程序处于不适合执行给定操作的状态时,会抛出IllegalStateException。 通俗一点讲,即在方法调用之前或之后进行检查,如果当前对象状态无法支持这种方法调用,则抛出IllegalStateException异常。 何时会抛出IllegalStateExcepti…

    Java 2023年4月27日
    00
  • Java实现LeetCode(1.两数之和)

    Java实现LeetCode(1.两数之和) 一、题目描述 给定一个整数数组和一个目标值,找出数组中和为目标值的两个数。 你可以假设每个输入只对应一种答案,并且同样的元素不能被重复利用。 示例: 给定 nums = [2, 7, 11, 15], target = 9 因为 nums[0] + nums[1] = 2 + 7 = 9 所以返回 [0, 1] …

    Java 2023年5月19日
    00
  • Spring Boot FeignClient 如何捕获业务异常信息

    Spring Boot是基于Spring框架的快速开发微服务的框架。FeignClient是Spring Cloud中常用的声明式Http客户端,可以实现服务之间的调用。在开发过程中,可能会发生业务异常,通过捕获异常信息可以更好地进行问题排查和解决。本文将详细讲解Spring Boot FeignClient如何捕获业务异常信息的完整攻略。 1. Feign…

    Java 2023年5月27日
    00
  • Java 把json对象转成map键值对的方法

    将 JSON 对象转换成 Map 对象有两种方法: 1. 使用 Jackson 库 Jackson 是一个流行的 JSON 处理库,它可以轻松地将 JSON 转换成 Java 对象或 Map 对象,反之亦然。可以通过 Maven 或 Gradle 将 Jackson 依赖项添加到项目中: <dependency> <groupId>c…

    Java 2023年5月26日
    00
合作推广
合作推广
分享本页
返回顶部