public class TimeUtil {
/**
* 根据年月日计算年龄,birthTimeString "1994-11-14"
* @param birthTimeString
* @return
*/
public static int getAgeByBirthTime(String birthTimeString) {
String strs[] = birthTimeString.trim().split("-");
int selectYear = Integer.parseInt(strs[0]);
int selectMonth = Integer.parseInt(strs[1]);
int selectDay = Integer.parseInt(strs[2]);
Calendar cal = Calendar.getInstance();
int yearNow = cal.get(Calendar.YEAR);
int monthNow = cal.get(Calendar.MONTH) + 1;
int dayNow = cal.get(Calendar.DATE);
int yearMinus = yearNow - selectYear;
int monthMinus = monthNow - selectMonth;
int dayMinus = dayNow - selectDay;
int age = yearMinus;
if (yearMinus < 0) {
age = 0;
} else if (yearMinus == 0) {
if (monthMinus < 0) {
age = 0;
} else if (monthMinus == 0) {
if (dayMinus < 0) {
age = 0;
} else if (dayMinus >= 0) {
age = 1;
}
} else if (monthMinus > 0) {
age = 1;
}
} else if (yearMinus > 0) {
if (monthMinus < 0) {
} else if (monthMinus == 0) {
if (dayMinus < 0) {
} else if (dayMinus >= 0) {
age = age + 1;
}
} else if (monthMinus > 0) {
age = age + 1;
}
}
return age;
}
/**
* 根据时间戳计算年龄
* @param birthTime
* @return
*/
public static int getAgeByBirthTime(long birthTime) {
Date date = new Date(birthTime * 1000l);
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
String birthTimeString = format.format(date);
return getAgeByBirthTime(birthTimeString);
}
/**
* 字符串转 Date类型
* @param stringTime 2000-01-01 06:00:00
* @return
*/
public static Date stringToDate(String stringTime) {
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
try {
return simpleDateFormat.parse(stringTime);
} catch (ParseException e) {
e.printStackTrace();
return null;
}
}
/**
* 获取当前时间一周后时间
* @return
*/
public static Date getDateOfAWeekLate() {
Calendar curr = Calendar.getInstance();
curr.set(Calendar.DAY_OF_MONTH, curr.get(Calendar.DAY_OF_MONTH) + 7);
Date date = curr.getTime();
return date;
}
/**
* 获取当前时间一月后时间
* @return
*/
public static Date getDateOfAMonthLate() {
Calendar curr = Calendar.getInstance();
curr.set(Calendar.MONTH, curr.get(Calendar.MONTH) + 1);
Date date = curr.getTime();
return date;
}
/**
* 获取当前时间一年后时间
* @return
*/
public static Date getDateOfAyearLate() {
Calendar curr = Calendar.getInstance()
curr.set(Calendar.YEAR, curr.get(Calendar.YEAR) + 1);
Date date = curr.getTime();
return date;
}
/**
* 获取当天开始时间
* @return
*/
public static Date todayZero() {
long current = System.currentTimeMillis(); //当前时间毫秒数
long zero = current/(1000*3600*24)*(1000*3600*24) - TimeZone.getDefault().getRawOffset(); //今天零点零分零秒的毫秒数
Date date = new Date(zero);
return date;
}
/**
* 获取当天结束时间
* @return
*/
public static Date todayEnd() {
long current = System.currentTimeMillis(); //当前时间毫秒数
long zero = current/(1000*3600*24)*(1000*3600*24) - TimeZone.getDefault().getRawOffset(); //今天零点零分零秒的毫秒数
long end = zero + 24*60*60*1000-1; //今天23点59分59秒的毫秒数
Date date = new Date(end);
return date;
}
相关推荐
DateTimeUtil 日期类型互相转换工具类
日期类型String,int ,Date,Calendar 年 月 日 时 分 秒格式相互转换
java中parseint函数_java中parseint函数
使用java中的parseInt()方法,怎么返回一个整数?1. int是java的基本数据类型,"int n"表示定义了一个int 型的变量n; 2. int n = Integer.parseInt(args[0]) 表示给定义的变量n 赋予一个初值为"Integer.parseInt(args[0])"; 3. Integer.parseInt(args[0])中,Integer是java中...
环境配置 |Jupyter lab/Jupyter Notebook 安装与设置
ipynb使用Jupyterlab/Jupyter Notebook 来编写程序时的文件,在使用时,可以现转换为标准的.py的python文件。
Python 边做边学 8.6 工具类--时间工具(TimeUtil)
前文说过,我们将时间转成时间戳存到数据库里,那就把处理时间的操作抽象一下,处理成工具; 1. 获取指定时间的时间戳; 2. 将时间戳转换成人可识别的格式(指定格式); 3. 将字符串时间(指定格式)转换成时间戳;
STM32F407 CanOpen主机实战:对象字典配置与多电机CIA402协议驱动详解
本文详细介绍了基于STM32F407的CanOpen主机开发实战,重点解析了对象字典的配置流程与多电机CIA402协议驱动方法。通过使用objdictedit工具配置SDO和PDO参数,并整合CanFestival协议栈,实现了对多个伺服电机的稳定同步控制。文章提供了从硬件连接到代码调试的完整指南,帮助开发者快速掌握工业现场的多轴运动控制技术。
Matlab实战:3种雷达间歇采样干扰的仿真与识别(附完整代码)
本文通过Matlab实战,详细仿真了雷达有源间歇采样干扰的三种核心样式:直接转发、重复转发和循环转发干扰。文章提供了完整的代码实现,并深入探讨了基于时频分析和循环平稳分析的特征提取与识别方法,为雷达抗干扰技术的学习与实践提供了清晰的工程实现路径。
IOS 获取手机系统时间
在iOS开发过程中,难免会需要获取手机系统时间,比如:获取手机系统时间(年、月、日、时、分、秒、毫秒等等)需求。 获取手机系统时间相对并不难实现,其获取方式通过开发库所提供的NSDate、NSCalendar等类似于Android中的Date、Calendar等时间类。 TimeUtil.h #import <UIKit/UIKit.h> @class TimeUtil; /** * 获取时间工具类 **/ @interface TimeUtil : NSObject /**
达梦--利用存储过程与定时任务实现数据自动迁移
本文详细介绍了在达梦数据库中如何结合存储过程与定时任务实现数据自动迁移。通过一个电商订单归档的实战案例,阐述了从设计表结构、编写具备异常处理和幂等性的存储过程,到配置DBMS_SCHEDULER定时任务的全流程。该方法能有效替代手动脚本,确保数据同步任务的稳定、准确与自动化执行,适用于报表准备、数据备份等多种场景。
TimeUtil工具类
Emm……这个工具类很强大,做保留…… import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.List; public c...
基于PLC的冲压件自动生产线电气系统设计【附数据】
考虑到生产线的高效运行和维护简便性,选择了三菱FX系列的可编程逻辑控制器(PLC)作为核心控制单元,该型号的PLC因其高可靠性和强大的功能集,在工业自动化领域有着广泛的应用。最后,在完成初步的软件开发后,进行了多轮次的模拟测试和现场调试,逐步修正了存在的问题,最终达到了预期的功能要求。例如,对于进料环节,选用了光电传感器以精确检测物料的位置;此外,为了适应不同尺寸的工件加工需求,还特别设计了一套可调节的夹具系统,不仅提高了生产线的灵活性,同时也降低了更换模具的成本。✅ 感恩科研路上每一位志同道合的伙伴!
uniapp - 如何跟内嵌 web-view 组件内的网页交互,与 web-view 内嵌网页进行双向通信(uniapp 与 webview 网页之间的 “相互“ 传值)提供详细的示例代码及解决方案
uni-app如何实现在H5环境中与web-view中的网页交互通讯uniappuni-app 与 web-view内嵌网页 双向通信 如何跟内嵌web-view交互uniappAPP与webview子页面交互uniappAPP与webview子页面交互关于uni-app 使用 web-view 页面之间互相跳转、通信等问题uniapp的web-view嵌入网页,网页与uniapp通信webview如何与uniapp写的H5页面交互嵌套webview调用uniapp各种API组件实现H5和app通讯和交互
日期转换工具类JodaTimeUtil
引入依赖包 <dependency> <groupId>joda-time</groupId> <artifactId>joda-time</artifactId> <version>2.3</version> </dependency>
《ESP32单片机基础入门》第2章:开发环境搭建
【代码】《ESP32单片机基础入门》第2章:开发环境搭建。
JDK21中是用不了TimeUtil
当前的环境是windows11、idea2021.1.3、JDK21。
Vivado ILA抓DDR信号(各种IO信号:差分、ISERDES、IOBUFDS等)
Vivado ILA抓DDR信号(各种IO信号:差分、ISERDES、IOBUFDS等)
文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况
主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。
TimeUtil
package com.mx.operationcenter.webframework.web.util; import lombok.SneakyThrows; import lombok.experimental.UtilityClass; import org.apache.commons.lang3.StringUtils; import java.text.SimpleDateFor...
STM32F407中文手册
STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。
时间工具类
关于时间的常用工具类 TimeUtil.java
RU DOS版、EFI版32bit/64bit BIOS常用工具
DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。
android 蓝牙通讯demo
android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。
android timeutil,android.util.AndroidRuntimeException:
我收到此android.util.AndroidRuntimeException: requestFeature() must be called before adding content错误。如下面的代码所示,该requestWindowFeature(Window.FEATURE_NO_TITLE);行位于代码行之前setContentView(R.layout.mainmenu);。在我的...
Android之根据时区获取当前时间
*** @Description :根据时区获取当地时间并格式化*/@JvmStatic//通过时区的id获得当时的时间): String?"0${month1${month1} else {"" + month"0day} else {"" + day"0hour} else {"" + hour"0minute} else {"0sec} else {"" + sec":" + sec1如果需要像正常时间一样走动,那就需要开个定时器一秒调用一次方法、
盘点Hutool6.0中新增的那些方法(上)
引言在前面《使用Hutool要注意了!升级到6.0后你调用的所有方法都将报错》一文中我发现Hutool从5.0升级到6.0后有很多的不兼容,所有的包名都改了,也盘点了很多不兼容的方法,接下几篇文章中我将盘点Hutool6.0里新增加的方法。二、MapUtil2.1 MapUtil.ofKvs()作用: 快速构建出HashM...
高精度时间戳优化方案解析
自适应:根据实际 QPS 动态启停高精度时间缓存;低侵入:对外 API 与完全一致;可观测:通过RecordLog输出状态切换日志,便于排查;资源友好:低负载时不占用额外 CPU,解决 Issue #1702 的“空转 CPU”问题;滑动窗口统计:精准计算 QPS,避免瞬时抖动误判。
Android快速开发工具集合——YUtils,OMG,学它
校验手机号 String MD5(String data) MD5加密 void copyToClipboard(String text) 复制文本到粘贴板 View Foreground(View view, int color, int start, int end) 字体高亮(TextView、EditText、Button)like this —》 YUtils.Foreground(mEditText, Color.RED,1,2); void showSoftKeyboard(Vi
Unity计时器
/*** * * Title: MXFramework * 主题: 计时器 * Description: * 功能:计时 * * Date: 2019 * Version: v1.3.0版本 * Modify Recoder: * */ using UnityEngine; name...
spring连接mysql高版本
1.数据库驱动改为 com.mysql.cj.jdbc.Driver 2.数据库时间存在bug serverTimezone=GMT,useSSL=false 3.版本号修改 <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</a...
biliTickerBuy智能抢票工具:3步配置实现B站会员购自动化购票
还在为B站热门演唱会门票秒光而烦恼吗?biliTickerBuy是一款开源免费的B站会员购辅助工具,专为二次元爱好者设计的智能抢票解决方案。这款Python开发的B站抢票神器通过毫秒级响应和智能重试机制,让普通用户也能轻松实现自动化购票,告别手动抢票的焦虑与失败。无论你是技术新手还是资深开发者,都能在5分钟内完成配置,开启高效抢票之旅。 ## 项目定位与价值主张:重新定义B站购票体验 bili
终极指南:如何用biliTickerBuy轻松搞定B站会员购抢票难题
作为一名B站会员购用户,你是否曾经为了抢到心仪的演唱会门票或限量周边而熬夜等待,却在开售瞬间因手速不够快而错失良机?biliTickerBuy正是为解决这一痛点而生的开源免费工具,它通过智能自动化技术帮助你在激烈的抢票竞争中脱颖而出。 ## 🎯 为什么你需要这个B站抢票神器? 在B站会员购的抢票场景中,人工操作面临三大核心挑战: 1. **时间精度问题**:手动操作无法实现毫秒级的时间同步
4356



被折叠的 条评论
为什么被折叠?



