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. (Good topic)卡牌分组(3.27leetcode每日打卡)

    给定一副牌,每张牌上都写着一个整数. 此时,你需要选定一个数字 X,使我们可以将整副牌按下述规则分成 1 组或更多组:  每组都有 X 张牌. 组内所有的牌上都写着相同的整数. 仅当你可选的 X &g ...

  2. Vue3 第三章

    Vite目录 public 下面的不会被编译 可以存放静态资源 assets 下面可以存放可编译的静态资源 components 下面用来存放我们的组件 App.vue 是全局组件 main ts 全 ...

  3. Vue03-组件化

    01. 组件化思想 当我们面对一个复杂问题的时候,常见的.高效的做法就是对复杂问题进行拆分, 将复杂问题拆分成一个个小的.简单的问题, 逐一解决小问题,再将处理好的小问题整合到一起, 如此解决复杂问题 ...

  4. 浅析MySQL代价模型:告别盲目使用EXPLAIN,提前预知索引优化策略

    背景 在 MySQL 中,当我们为表创建了一个或多个索引后,通常需要在索引定义完成后,根据具体的数据情况执行 EXPLAIN 命令,才能观察到数据库实际使用哪个索引.是否使用索引.这使得我们在添加新索 ...

  5. 解决k8s删除pod后又重新创建了新的pod

    1.问题现象 2.原因 在Kubernetes中,当你删除一个Pod时,如果该Pod是由Deployment.ReplicaSet或PodController创建的,那么这个Pod会被标记为" ...

  6. 2023-12-20:用go语言,给定一个数组arr,长度为n,在其中要选两个不相交的子数组。 两个子数组的累加和都要是T,返回所有满足情况中,两个子数组长度之和最小是多少? 如果没有有效方法,返回-

    2023-12-20:用go语言,给定一个数组arr,长度为n,在其中要选两个不相交的子数组. 两个子数组的累加和都要是T,返回所有满足情况中,两个子数组长度之和最小是多少? 如果没有有效方法,返回- ...

  7. 华企盾DSC邮件服务器测试连接提示Server has closed the connection(端口不对)

    解决方法:邮件服务器端口填错了,应该是smtp.126.com:s465,或者smtp.126.com:s587 其他邮箱同理.

  8. Python 中 key 参数的含义及用法

    哈喽大家好,我是咸鱼 我们在使用 sorted() 或 map() 函数的时候,都会看到里面有一个 key 参数 其实这个 key 参数也存在于其他内置函数中(例如 min().max() 等),那么 ...

  9. Odoo Windows系统下部署方法

    Windows 系统下 Odoo 环境搭建流程 ① 安装python2.7 安装完成后 在命令行(cmd)输入python 如果不出现内部错误提示则表示环境配置成功    当出现错误时要设置环境变量 ...

  10. ASR项目实战-决策点

    针对语音识别的产品,分别记录设计.开发过程中的决策点. 实时语音识别 对于实时语音识别来说,客户端和服务端之间实时交换语音数据和识别的结果. 客户端在启动识别时,即开始发送语音数据,期望在等待较短的时 ...