毫秒转换为天、小时、分、秒

简介: 原文:毫秒转换为天、小时、分、秒      将毫秒数或两个日期类型数转换为*天*小时*分*秒的方法,在进行时间段计算时应该经常用到。       记得有一道ACM题就是从一个计时方法A转换为另一个计时方法B,思路如下:总时间不会变,1s就是1s,只不过小时、分钟、天等包含的秒数不一样,所以先把A转换为总秒数sumSec,然后用sumSec得出B下的时间;很简单吧,我们协会没人想出来,我一直哦在思考原因,是不是因为学习学的没了创造性。
原文: 毫秒转换为天、小时、分、秒

      将毫秒数或两个日期类型数转换为*天*小时*分*秒的方法,在进行时间段计算时应该经常用到。

      记得有一道ACM题就是从一个计时方法A转换为另一个计时方法B,思路如下:总时间不会变,1s就是1s,只不过小时、分钟、天等包含的秒数不一样,所以先把A转换为总秒数sumSec,然后用sumSec得出B下的时间;很简单吧,我们协会没人想出来,我一直哦在思考原因,是不是因为学习学的没了创造性。

      关于格式化Date类型的问题不在本文讨论范围之内,请读者自行查阅。

/**
	 * 
	 * @param 要转换的毫秒数
	 * @return 该毫秒数转换为 * days * hours * minutes * seconds 后的格式
	 * @author fy.zhang
	 */
	public static String formatDuring(long mss) {
		long days = mss / (1000 * 60 * 60 * 24);
		long hours = (mss % (1000 * 60 * 60 * 24)) / (1000 * 60 * 60);
		long minutes = (mss % (1000 * 60 * 60)) / (1000 * 60);
		long seconds = (mss % (1000 * 60)) / 1000;
		return days + " days " + hours + " hours " + minutes + " minutes "
				+ seconds + " seconds ";
	}
	/**
	 * 
	 * @param begin 时间段的开始
	 * @param end	时间段的结束
	 * @return	输入的两个Date类型数据之间的时间间格用* days * hours * minutes * seconds的格式展示
	 * @author fy.zhang
	 */
	public static String formatDuring(Date begin, Date end) {
		return formatDuring(end.getTime() - begin.getTime());
	}

      感谢共享者,由于找不到原文链接,所以本代码我完全未做改动以体现对原作者的尊重。

目录
相关文章
|
存储 人工智能 自然语言处理
RAG 调优指南:Spring AI Alibaba 模块化 RAG 原理与使用
通过遵循以上最佳实践,可以构建一个高效、可靠的 RAG 系统,为用户提供准确和专业的回答。这些实践涵盖了从文档处理到系统配置的各个方面,能够帮助开发者构建更好的 RAG 应用。
5779 117
|
XML 数据格式 Python
Python实用记录(五):labelImg安装和使用-----看这篇就够了!
这篇文章介绍了在Windows 10系统中使用Anaconda3安装labelImg工具的方法,包括通过pip安装相关包和从GitHub下载配置,以及一些使用技巧,如修改预定义类别和自动保存功能。
2234 3
|
人工智能 前端开发 JavaScript
AI程序员:通义灵码 2.0应用VScode前端开发深度体验
AI程序员:通义灵码 2.0应用VScode前端开发深度体验,在软件开发领域,人工智能技术的融入正深刻改变着程序员的工作方式。通义灵码 2.0 作为一款先进的 AI 编程助手,与广受欢迎的代码编辑器 Visual Studio Code(VScode)相结合,为前端开发带来了全新的可能性。本文将详细分享通义灵码 2.0 在 VScode 前端开发环境中的深度使用体验。
2308 2
AI程序员:通义灵码 2.0应用VScode前端开发深度体验
|
10月前
|
弹性计算 JavaScript Ubuntu
WebSocket协议相关的测试命令工具使用简介
本文介绍了针对WebSocket的测试工具wscat和websocat的基本使用方法,以及通过curl命令测试HTTP/HTTPS协议的方式。对于WebSocket,直接使用curl测试较为复杂,推荐使用wscat或websocat。文中详细说明了这两种工具的安装步骤、常用参数及连接示例,例如在ECS上开启8080端口监听并进行消息收发测试。此外,还提供了curl命令的手动设置头部信息以模拟WebSocket握手的示例,但指出curl仅能作为客户端测试工具,无法模拟服务器。
3377 5
|
机器学习/深度学习 传感器 算法
《大模型:赋予人形机器人“最强大脑”》
在科技飞速发展的今天,人形机器人从科幻走进现实,成为科研与产业焦点。大模型为其赋予“最强大脑”,通过多模态感知融合、知识理解与推理、复杂任务规划及自主学习等技术,全面提升机器人的决策与认知能力。它们不仅能理解视觉和语言指令,还能进行复杂场景下的智能推理和任务执行,展现出接近人类的智能水平。尽管仍面临挑战,但大模型正推动人形机器人向更广泛的应用领域迈进,为未来带来更多可能。
463 7
|
缓存 安全 JavaScript
PHP在Web开发中的平台优势与未来趋势###
【10月更文挑战第21天】 PHP,Hypertext Preprocessor,凭借其灵活性、广泛应用和强大社区支持,已成为Web开发的常青树。本文探讨了PHP的发展历程、核心优势、最佳实践案例及面临的挑战与机遇,揭示其在现代Web开发中不可替代的角色,以及如何适应未来技术趋势,持续引领Web创新。 ###
264 2
|
算法 Windows
CAE如何基于CPU最佳核数和token等计算成本
【8月更文挑战第26天】在使用CAE(计算机辅助工程)进行分析计算时,需综合考虑CPU核数和token对成本的影响。CPU核数越多,虽能加速计算,但过多核数会因通信开销和内存带宽限制导致性能提升放缓。成本计算需考虑硬件租赁或购买费用及云服务收费标准。Token作为软件许可,需分摊到每次计算中。通过测试优化找到性能与成本的平衡点,实现最低成本下的高效计算。
365 1
|
SQL Java 数据库连接
MyBatis与MyBatis-Plus的区别?
MyBatis与MyBatis-Plus的区别?
3583 0