您的位置:

Java实现时间和时间戳的互相转换

在Java开发中,我们经常需要对时间和时间戳进行转换。时间通常以“年月日时分秒”等格式表示,而时间戳则是一个整数值。因此,学会如何在Java中实现时间和时间戳的相互转换是非常重要的。

一、获取当前时间及时间戳

Java中获取当前时间及时间戳的方法非常简单,可以使用系统提供的java.util.DateSystem.currentTimeMillis()方法。

import java.util.Date;

public class TimeStamp {
    public static void main(String[] args){
        // 获取当前时间
        Date now = new Date();
        System.out.println("当前时间:"+now);

        // 获取当前时间戳
        long timeStamp = System.currentTimeMillis();
        System.out.println("当前时间戳:"+timeStamp);
    }
}

运行以上代码,可以分别得到当前的时间和时间戳。

二、时间戳转换为时间

将时间戳转换为时间,可以使用java.util.Date类的构造函数或者格式化工具类java.text.SimpleDateFormat

1、使用java.util.Date构造函数

import java.util.Date;

public class TimeStamp {
    public static void main(String[] args){
        // 时间戳转换为时间
        long timeStamp = 1488326400000L;
        Date date = new Date(timeStamp);
        System.out.println("时间戳为:"+timeStamp+" 的时间为:"+date);
    }
}

运行以上代码,可以得到当前时间戳所对应的时间。

2、使用java.text.SimpleDateFormat格式化工具类

对于更加复杂的时间格式,可以使用java.text.SimpleDateFormat类,它提供了多种格式化日期的方法。

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

public class TimeStamp {
    public static void main(String[] args){
        // 时间戳转换为时间
        long timeStamp = 1488326400000L;

        // 设置格式化格式
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

        // 格式化时间
        String date = sdf.format(new Date(timeStamp));
        System.out.println("时间戳为:"+timeStamp+" 的时间为:"+date);
    }
}

运行以上代码,可以得到当前时间戳所对应的具体时间。

三、时间转换为时间戳

将时间转换为时间戳,可以使用java.util.Date类中的getTime()方法,该方法返回自 1970 年 1 月 1 日以来,以毫秒为单位的时间。

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

public class TimeStamp {
    public static void main(String[] args) {
        // 时间转换为时间戳
        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
        String time = "2017-03-01 00:00:00";
        Date date = sdf.parse(time);

        // 转换为时间戳并输出
        long timeStamp = date.getTime();
        System.out.println("时间为:"+time+" 的时间戳为:"+timeStamp);
    }
}

运行以上代码,可以得到当前时间所对应的时间戳。

总结

本文介绍了Java中时间和时间戳的相互转换方法,包括获取当前时间和时间戳、时间戳转换为时间、时间转换为时间戳等。

无论在Web开发、移动开发还是桌面开发中,时间和时间戳的转换都是常见的需求。本文介绍的方法是Java中最基本的方法,当然还有其他库和框架也提供了更加强大和方便的时间处理方法,读者可以根据自己的需求进行选择。