首页 > 编程语言 >在Java中需要特殊处理时间的方法

在Java中需要特殊处理时间的方法

时间:2022-10-20 20:22:17浏览次数:48  
标签:特殊 Java 处理 System 60 时间 println newDate out

在开发中会遇到时间的特殊处理 例如: 时间转换,未来时间(当前时间加上分时天),时间相差

1.时间转换

有时候时间格式不对,不是我们需要的,那就需要转换,转换成这样的 2022-10-21 19:06:51 者转换成时间戳 2022-10-21 19:06:51
所以这我们就需要去做相应的转换了 直接看代码

	// 转换为有格式的时间 参数是: 需要的格式
	SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
	System.out.println("时间是: " + sdf.format(new Date()));
	// 转为时间戳
	Date date = new Date();
	long time = date.getTime();
	System.out.println("时间是: " + time);

结果为:
image

2.未来时间

在处理特殊业务的时候,需要用到明天的时间,这个时候我们就需要来处理

	// 需要渠道当前时间
	Date date = new Date();
	// 然后把当前时间转为时间戳,才能计算
	long time = date.getTime();

	Date newDate = new Date();
	System.out.println(sdf.format(newDate));

	// 加一秒
	newDate.setTime(time + 1000);

	System.out.println(time);
	System.out.println(sdf.format(newDate));

	// 加一分
	newDate.setTime(time + 1000 * 60);
	System.out.println(sdf.format(newDate));

	// 加一时
	newDate.setTime(time + 1000 * 60 * 60);
	System.out.println(sdf.format(newDate));

	// 加一天
	newDate.setTime(time + 1000 * 60 * 60 * 24);
	System.out.println(sdf.format(newDate));

结果是:

	当前时间: 2022-10-20 19:53:00
	加一秒的时间: 2022-10-20 19:53:01
	加一分的时间: 2022-10-20 19:54:00
	加一时的时间: 2022-10-20 20:53:00
	加一天的时间: 2022-10-21 19:53:00

也都是没有问题的

3. 时间相差

如果是需要计算两个时间相差多少呢,我们也是可以计算的

	// 计算两个是时间差
	// 当前时间/结束时间
	Date date = new Date();
	long endTime = date.getTime();

	// 一天后时间/起始时间
	long time = date.getTime();
	date.setTime(time + 1000 * 60 * 60 * 24);
	long startTime = date.getTime();

	// 天数差 计算都是开始时间减去结束时间
	int day = (int) ((startTime - endTime) / (1000 * 60 * 60 * 24));
	System.out.println("相差:" + day + "天");
	// 小时差
	int hour = (int) ((startTime - endTime ) / (1000 * 60 * 60 ));
	System.out.println("相差:" + hour + "小时");
	// 分钟差
	int minute = (int) ((startTime - endTime) / (1000 * 60 ));
	System.out.println("相差:" + minute + "分钟");
	// 秒差
	int seconds = (int) ((startTime - endTime) / 1000);
	System.out.println("相差:" + seconds + "秒");

结果是:

	相差:1天
	相差:24小时
	相差:1440分钟
	相差:86400秒

在开发过程中都遇会到各种问题,我们就共同分享学习进步吧,

标签:特殊,Java,处理,System,60,时间,println,newDate,out
From: https://www.cnblogs.com/cilye/p/16811124.html

相关文章

  • 【java json基础】字符串转json json转字符串 json数组转换 【java基础知识】【实用】
    读书就是:从薄读厚,再从厚读薄的过程。(前部分:问答,后部分:测试举例)         数据测试:举例:      ......
  • 日志数据分析和数据的可视化处理
    数据分析:在HIVE统计下列数据。(1)统计最受欢迎的视频/文章的Top10访问次数(video/article)(2)按照地市统计最受欢迎的Top10课程(ip)(3)按照流量统计最受欢迎的Top10课程(traffic......
  • Java四种线程池
    1,线程池的作用 线程池作用就是限制系统中执行线程的数量。 根据系统的环境情况,可以自动或手动设置线程数量,达到运行的最佳效果。 2,为什么要用线程池? (1).减少了创建......
  • java---LocalDateTime
    packagejavasm.demo02;importjava.time.*;importjava.time.temporal.ChronoUnit;publicclassLocalDaTime{publicstaticvoidmain(String[]args){Loc......
  • 自然语言处理学习笔记-lecture5-语言模型01
    基本概念大规模语料库的出现为自然语言统计处理方法的实现提供了可能,一个句子\(s=w_1w_2\cdotsw_m\)的先验概率如下:\[\begin{aligned}p(s)&=p(w_1)\timesp(w_2|w_......
  • 超标量处理器设计 姚永斌 pdf
    清华大学出版社出版,姚永斌著本书讲述超标量(SuperScalar)处理器的设计,现代的高性能处理器都采用了超标量结构,大至服务器和高性能PC的处理器,小至平板电脑和智能手机的处理器,......
  • Redisson 大bug处理: Command xxx succesfully sent, but channel xxx has been close
    棘手的bug,无从下手使用redisson的过程中, 我们的应用程序突然报错: org.redisson.client.RedisConnectionClosedException:Command(EXISTS),params:[paypal_fee_i......
  • [报错] Modelsim远程无法打开异常处理
    在远程桌面打开Modelsim时,我们无法打开,会弹出:FatalLicenseError错误,其原因为:在License文件中,没有允许远程访问;所以我们只需要在Modelsim的license文件中增加允许远程打开......
  • JAVA 进阶 69-79
    10/201.创建媒体类型了解父类与子类importjava.util.ArrayList;//导入包publicclasssfgda{//定义容器容器类型是DGSD这个类型privatestaticArrayList<DG......
  • Java开发必学知识合集(一)
    前言Java开发过程中,常用且重要的知识点是开发中最基本的,尤其是刚接触Java开发不久的开发者来说,基本功很重要,是直接做Java工作的基本,那么本文就来分享一下在Java开发过程中的......