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. 时间复杂度为 O(n^2) 的排序算法

    对于小规模数据,我们可以选用时间复杂度为 O(n2) 的排序算法.因为时间复杂度并不代表实际代码的执行时间,它省去了低阶.系数和常数,仅代表的增长趋势,所以在小规模数据情况下, O(n2) 的排序算法 ...

  2. win32 API 文件夹操作函数整理

    常用操作文件目录的函数 1. CreateDirectory 创建文件夹 原型: BOOL CreateDirectory( LPCTSTR lpPathName, LPSECURITY_ATTRIB ...

  3. STM32外设:信号转换器 ADC、DAC

    主要外设: ADC:Analog to Digital Converter 模数转换器 DAC:Digital to Analog Converter 数模转换器 ADC_IN` 主要功能:测外部引脚 ...

  4. C++ 邮件槽ShellCode跨进程传输

    在计算机安全领域,进程间通信(IPC)一直是一个备受关注的话题.在本文中,我们将探讨如何使用Windows邮件槽(Mailslot)实现ShellCode的跨进程传输.邮件槽提供了一种简单而有效的单向 ...

  5. [USACO2022OPENS] Visits

    题目描述 Bessie 的 \(N\)(\(2\le N\le 10^5\))个奶牛伙伴(编号为 \(1\cdots N\))每一个都拥有自己的农场.对于每个 \(1\le i\le N\),伙伴 i ...

  6. 2 与HTTP相关的各种概念

    目录 1 与HTTP相关的各种应用 1 网络世界 2 浏览器 3 Web服务器 4 CDN 5 爬虫 2 与HTTP相关的各种协议 1 HTML 2 编程语言 3 WebService 4 WAF 1 ...

  7. Redis入门实践

    安装Redis 下载:官网:https://redis.io/download/,选择稳定版下载. 上传至linux 解压Redis:tar -zxvf redis-6.2.7.tar.gz,得到: ...

  8. MD5在文件安全中的应用与重要性

    一.MD5简介 MD5(Message-Digest Algorithm 5)是一种广泛应用的密码散列函数,由美国密码学家罗纳德·李维斯特(Ronald Linn Rivest)于1992年提出.它主 ...

  9. 基于WebRTC的局域网文件传输

    基于WebRTC的局域网文件传输 WebRTC(Web Real-Time Communications)是一项实时通讯技术,允许网络应用或者站点,在不借助中间媒介的情况下,建立浏览器之间点对点P2P ...

  10. Python——第五章:hashlib模块

    hashlib 模块(hash)算法 hashlib 模块是 Python 中用于加密散列(hash)算法的模块.它提供了对常见的哈希算法(如MD5.SHA-1.SHA-256等)的支持,使得开发者可 ...