Java 时间戳和时间相互转换 日期时间和字符串相互转换 日期时间相减差值 日期时间增加指定天数

代码:

package com.sux.demo;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date; public class TestDateTime { public static void main(String[] args) throws Exception {
//获取当前系统时间
Date currentTime = new Date();
System.out.println("当前系统时间:" + date2String(currentTime)); //获取当前系统时间戳
long currentTimestamp = System.currentTimeMillis();
System.out.println("当前系统时间戳:" + currentTimestamp); //时间转换为时间戳
Date date = new Date();
long timestamp = date2Timestamp(date);
System.out.println("时间转换为时间戳:" + timestamp); //时间戳转换为时间
timestamp = System.currentTimeMillis();
date = timestamp2Date(timestamp);
System.out.println("时间戳转换为时间:" + date2String(date)); //日期时间转换为字符串
date = new Date();
String strDate = date2String(date);
System.out.println("日期时间转换为字符串:" + strDate); //字符串转换为日期时间
strDate = "2021-03-20 15:12:39.235";
date = string2Date(strDate);
System.out.println("字符串转换为日期时间:" + date2String(date)); //日期时间相减差值(秒)
Date date1 = string2Date("2021-03-20 15:12:38.232");
Date date2 = string2Date("2021-03-20 15:11:39.235");
double sec = DateSubtraction(date1, date2);
System.out.println("日期时间相减差值:" + sec + " 秒"); //日期时间增加指定天数
date = string2Date("2021-03-20 15:12:38.232");
Date newDate = addDay(date, 1);
System.out.println("日期时间增加指定天数:" + date2String(newDate));
} /**
* 时间转换为时间戳
*/
private static long date2Timestamp(Date date) {
return date.getTime();
} /**
* 时间戳转换为时间
*/
private static Date timestamp2Date(long timestamp) {
return new Date(timestamp);
} /**
* 日期时间转换为字符串
*/
private static String date2String(Date date) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
return simpleDateFormat.format(date);
} /**
* 字符串转换为日期时间
*/
private static Date string2Date(String strDate) throws ParseException {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
return simpleDateFormat.parse(strDate);
} /**
* 日期时间相减差值(秒)
*/
private static double DateSubtraction(Date a, Date b) {
return (a.getTime() - b.getTime()) / 1000.0;
} /**
* 日期时间增加指定天数
*/
private static Date addDay(Date date, int day) {
return new Date(date.getTime() + 1000 * 3600 * 24 * day);
}
}

Java 时间戳和时间相互转换 日期时间和字符串相互转换 日期时间相减差值 日期时间增加指定天数的更多相关文章

  1. oracle两时间相减得到相差的时间

    1.months_between(date1,date2);date1和date2相减得到相差的月份. select months_between(to_date('2015-05-11','yyyy ...

  2. Java实现 LeetCode 653 两数之和 IV - 输入 BST(递归,找差值)

    653. 两数之和 IV - 输入 BST 给定一个二叉搜索树和一个目标结果,如果 BST 中存在两个元素且它们的和等于给定的目标结果,则返回 true. 案例 1: 输入: 5 / \ 3 6 / ...

  3. mysql时间相减的问题

    MySQL中时间不能直接相减,如果日.分.时不同,相减结果是错误的 mysql> select t1,t2,t2-t1 from mytest;   +--------------------- ...

  4. JAVA-Unit02: Oracle字符串操作 、 Oracle数值操作 、 Oracle日期操作 、 空值操作

    Unit02: Oracle字符串操作 . Oracle数值操作 . Oracle日期操作 . 空值操作 DQL数据查询语言 查询语句基本由SELECT子句由FROM子句构成. SELECT子句指定要 ...

  5. c# DateTime时间格式和JAVA时间戳格式相互转换

    /// java时间戳格式时间戳转为C#格式时间 public static DateTime GetTime(long timeStamp) { DateTime dtStart = TimeZon ...

  6. java常用类详细介绍及总结:字符串相关类、日期时间API、比较器接口、System、Math、BigInteger与BigDecimal

    一.字符串相关的类 1.String及常用方法 1.1 String的特性 String:字符串,使用一对""引起来表示. String声明为final的,不可被继承 String ...

  7. JAVA中计算两个日期时间的差值竟然也有这么多门道

    上半年春招的时候,作为面试官,对于面试表现的不错的同学会要求其写一小段代码看看.题目很简单: 给定一个日期,然后计算下距离今天相差的天数. 本以为这么个问题就是用来活跃面试氛围的,但是结果却让人大跌眼 ...

  8. java parse 带英文单词的日期字符串 转 date (转化新浪微博api返回的时间)

    拂晓风起 专注前端技术cocos2d.js.flash.html5,联系:kenkofox@qq.com.如果读者要找腾讯工作机会,请不吝推荐简历. 博客园 首页 新闻 新随笔 联系 管理 订阅 随笔 ...

  9. python 日期、时间、字符串相互转换

    python 日期.时间.字符串相互转换 在python中,日期类型date和日期时间类型dateTime是不能比较的. (1)如果要比较,可以将dateTime转换为date,date不能直接转换为 ...

  10. JAVA基础学习之final关键字、遍历集合、日期类对象的使用、Math类对象的使用、Runtime类对象的使用、时间对象Date(两个日期相减)(5)

    1.final关键字和.net中的const关键字一样,是常量的修饰符,但是final还可以修饰类.方法.写法规范:常量所有字母都大写,多个单词中间用 "_"连接. 2.遍历集合A ...

随机推荐

  1. AcWing 168. 生日蛋糕

    原题链接:AcWing 168. 生日蛋糕 设当前体积是\(v,h.r\)分别记录每层的高度和半径,由于整个蛋糕的上表面面积等于最大蛋糕的圆面积,所以枚举到最大一层的时候直接加上即可. 优化搜索顺序: ...

  2. Windows10下的hexo搭建

    用hexo搭建个人博客 查看效果:慢蜗牛博客 目录 用hexo搭建个人博客 准备环境 Github Node.js和Git 连接Github 安装hexo 安装插件 部署 Hexo 到 GitHub ...

  3. 请查收,本周刷屏的两大热点「GitHub 热点速览」

    如果你逛 HackerNews 或者是推特,你一定会被 multipleWindow3dScene 这个跨窗口渲染项目的成果刷屏,毕竟国内的技术平台上也出现了不少的模仿项目.另外一个热点,便是你在白板 ...

  4. Java八股面试整理(4)

    34.遇到过异常吗,如何处理? 在Java中,可以按照如下三个步骤处理异常: 捕获异常 将业务代码包裹在try块内部,当业务代码中发生任何异常时,系统都会为此异常创建一个异常对象.创建异常对象之后,J ...

  5. JPA动态注册多数据源

    背景 目前已经是微服务的天下,但是随着业务需求的日益增长,部分应用还是出现了需要同时连接多个数据源操作数据的技术诉求. 需要对现有的技术架构进行优化升级,查阅了下网上的文章,基本都是照搬的同一篇文章, ...

  6. .NET使用分布式网络爬虫框架DotnetSpider快速开发爬虫功能

    前言 前段时间有同学在微信群里提问,要使用.NET开发一个简单的爬虫功能但是没有做过无从下手.今天给大家推荐一个轻量.灵活.高性能.跨平台的分布式网络爬虫框架(可以帮助 .NET 工程师快速的完成爬虫 ...

  7. [ABC281F] Xor Minimization

    div class="part"> Problem Statement You are given a sequence of non-negative integers $ ...

  8. 在arm架构的银河麒麟系统部署Nginx

    以下是在arm架构的银河麒麟系统上部署Nginx的详细步骤: 1. 创建文件夹 首先,在合适的位置创建必要的文件夹.在本例中,我们将创建/opt/nginx和/usr/src/nginx两个文件夹. ...

  9. 如何 使 Java、C# md5 加密的值保持一致

    Java C# md5 加密值保持一致,一般是编码不一致造成的值不同 JAVA (加密:123456) C#(加密:123456) UTF-8 e10adc3949ba59abbe56e057f20f ...

  10. NC65二开经验总结

    公式相关 1.显示公式没执行 列表界面显示,卡片界面不显示: Handler的onBoCard执行: getBillCardPanel().execHeadLoadFormulas(); Contro ...