【工具类】时间相关的方法
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 class DateUtil {/**** 从yyyy-MM-dd HH:mm格式转成yyyyMMddHH格式* @param dateStr* @return*/public static String formatStr(String dateStr){SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");try {Date date = simpleDateFormat.parse(dateStr);simpleDateFormat = new SimpleDateFormat("yyyyMMddHH");return simpleDateFormat.format(date);} catch (ParseException e) {e.printStackTrace();}return null;}/**** 获取指定日期的凌晨* @return*/public static Date toDayStartHour(Date date){Calendar calendar = Calendar.getInstance();calendar.setTime(date);calendar.set(Calendar.HOUR_OF_DAY, 0);calendar.set(Calendar.MINUTE, 0);calendar.set(Calendar.SECOND, 0);calendar.set(Calendar.MILLISECOND, 0);Date start = calendar.getTime();return start;}/**** 时间增加N分钟* @param date* @param minutes* @return*/public static Date addDateMinutes(Date date,int minutes){Calendar calendar = Calendar.getInstance();calendar.setTime(date);calendar.add(Calendar.MINUTE, minutes);// 24小时制date = calendar.getTime();return date;}/**** 时间递增N小时* @param hour* @return*/public static Date addDateHour(Date date,int hour){Calendar calendar = Calendar.getInstance();calendar.setTime(date);calendar.add(Calendar.HOUR, hour);// 24小时制date = calendar.getTime();return date;}/**** 获取时间菜单* @return*/public static List<Date> getDateMenus(){//定义一个List<Date>集合,存储所有时间段List<Date> dates = new ArrayList<Date>();//循环12次Date date = toDayStartHour(new Date()); //凌晨for (int i = 0; i <12 ; i++) {//每次递增2小时,将每次递增的时间存入到List<Date>集合中dates.add(addDateHour(date,i*2));}//判断当前时间属于哪个时间范围Date now = new Date();for (Date cdate : dates) {//开始时间<=当前时间<开始时间+2小时if(cdate.getTime()<=now.getTime() && now.getTime()<addDateHour(cdate,2).getTime()){now = cdate;break;}}//当前需要显示的时间菜单List<Date> dateMenus = new ArrayList<Date>();for (int i = 0; i <5 ; i++) {dateMenus.add(addDateHour(now,i*2));}return dateMenus;}/**** 时间转成yyyyMMddHH* @param date* @return*/public static String date2Str(Date date){SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMMddHH");return simpleDateFormat.format(date);}public static void main(String[] args) {//存储数据结果List<Date> dateList = new ArrayList<>();//获取到本日的凌晨时间点Date startHour = toDayStartHour(new Date());//循环12次for(int i=0;i<12;i++){dateList.add(addDateHour(startHour,i*2));}for (Date date : dateList) {SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String format = simpleDateFormat.format(date);System.out.println(format);}}
}
【工具类】时间相关的方法相关推荐
- 第三次学JAVA再学不好就吃翔(part87)--Arrays工具类的asList方法
学习笔记,仅供参考,有错必纠 Arrays工具类的asList方法 方法概述 public static <T> List<T> asList(T... a) 返回一个受指定数 ...
- java.util.zip 用法,Java压缩文件工具类ZipUtil使用方法代码示例
本文实例通过Java的Zip输入输出流实现压缩和解压文件,前一部分代码实现获取文件路径,压缩文件名的更改等,具体如下: package com.utility.zip; import java.io. ...
- 分页封装实用工具类及其使用方法
分页封装实用工具类及其使用方法 作者: javaboy2012 Email:yanek@163.com qq: 1046011462 package com.yanek.util; import ...
- HttpClient Utils工具类的编写方法分享
转自: HttpClient Utils工具类的编写方法分享 HttpClient简介: HttpClient 是Apache Jakarta Common 下的子项目,可以用来提供高效的.最新的.功 ...
- ( 持续更新,目前含 200+ 工具类 ) DevUtils 是一个 Android 工具库, 主要根据不同功能模块,封装快捷使用的工具类及 API 方法调用。
DevUtils GitHub About ( 持续更新,目前含 200+ 工具类 ) Roadmap DevUtils 是一个 Android 工具库,主要根据不同功能模块,封装快捷使用的工具类及 ...
- ssm整合oracle分页,java实现ssm分页工具类及其使用方法
分享一下我现在所使用的分页工具类,不像网上的那么规范 纯属自己总结根据逻辑敲出来的,基于mysql的limit来做分页.有不对的地方还望大佬指出,直接上代码 PageTools package com ...
- java sort类_JAVA Collections工具类sort()排序方法
主要分析内容: 一.Collections工具类两种sort()方法 二.示例 一.Collections工具类两种sort()方法 格式一: public static > void sort ...
- java图片式验证码的实现(引入hutool工具类和自己编写工具类两种方法)
自己编写的工具类 效果 可传递位数 生成相应验证图片 可将图片生成File文件.输出流 适用于前后端结合 import javax.imageio.ImageIO; import java.awt.* ...
- StringUtils工具类的isBlank()方法使用说明
在校验一个String类型的变量是否为空时,通常存在3中情况 是否为 null 是否为 "" 是否为空字符串(引号中间有空格) 如: " ". Str ...
- FileUtils工具类的使用方法
/** * FileUtils支持很多文件操作,如 * 文件写入 * 读取文件 * 创建目录 * 拷贝文件和目录 * 删除文件和目录 * 从URL转换 * 基于统配和过滤查看文件和目录 * 比较文件内 ...
最新文章
- C# winform DataGridView 操作大全
- 向MySQL数据库中插入数据,sql语句没问题,但插入失败也不报错?
- 最简单易懂的对拍讲解
- wxWidgets:多重继承
- ubuntu修改顶栏颜色
- HDU 3486 Interviewe RMQ
- 深入理解SpringCloud之Eureka注册过程分析
- pythoon介绍、安装环境、基础知识、练习题
- 恒生电子笔试题集锦(不断更新)
- C# 网上收集的一些所谓的开源项目
- python中sklearn.datasets.make_blobs()函数用法
- 全球化文案设计: 简明易懂、四海达意
- ElasticSearch 2 (25) - 语言处理系列之同义词
- 如何有效提升技术[成为大Niu]的两个方法
- 【纯净版windows系统】U盘启动制作图文教程
- 深入了解 Swarm:去中心化存储和通信系统
- zh-un电子显示屏优盘发送与设置方法(P10单红)
- 移动端UI设计750揭秘
- 【VBA研究】VBA编程产生不重复随机数
- 触摸查询系统服务器注册码,多媒体触摸查询系统旗舰版-用户手册(20161215.pdf