Java时间工具类-获取一天的起始与结束时间

简介: Java时间工具类-获取一天的起始与结束时间
一.功能概述:


  1. 获取昨天的时间;
  2. 获取明天的时间;
  3. 获取一天的起始时间与结束时间


二.代码详情:

package com.crt.settlement.Datasource.common.utils;
import java.util.Calendar;
import java.util.Date;
import java.util.GregorianCalendar;
public class DateUtil {
    /*
     * 获取昨天的时间
     */
    public static Date getYesterdayDate(){
        Date date=new Date();//取时间
         Calendar calendar = new GregorianCalendar();
         calendar.setTime(date);
         calendar.add(calendar.DATE,-1);//把日期往后增加一天.整数往后推,负数往前移动
         return calendar.getTime();
    }
    public static Calendar getYesterdayCalendar(){
        Date date=new Date();//取时间
        Calendar calendar = new GregorianCalendar();
        calendar.setTime(date);
        calendar.add(calendar.DATE,-1);//把日期往后增加一天.整数往后推,负数往前移动
        return calendar;
    }
    /*
     * 获取明天的时间
     */
    public static Date getTomorrowDate(){
        Date date=new Date();//取时间
        Calendar calendar = new GregorianCalendar();
        calendar.setTime(date);
        calendar.add(calendar.DATE,1);//把日期往后增加一天.整数往后推,负数往前移动
        return calendar.getTime();
    }
    public static Calendar getTomorrowCalendar(){
        Date date=new Date();//取时间
        Calendar calendar = new GregorianCalendar();
        calendar.setTime(date);
        calendar.add(calendar.DATE,1);//把日期往后增加一天.整数往后推,负数往前移动
        return calendar;
    }
    /*
     * 获取当前天的起始时间
     */
    public static Date getStartTime(Calendar day) {   
        day.set(Calendar.HOUR_OF_DAY, 0); 
        day.set(Calendar.MINUTE, 0);  
        day.set(Calendar.SECOND, 0);  
        day.set(Calendar.MILLISECOND, 0);  
        return day.getTime();  
    }  
    /*
     * 获取当前天的结束时间
     */
    public static Date getEndTime(Calendar day) {  
        day.set(Calendar.HOUR_OF_DAY, 23);  
        day.set(Calendar.MINUTE, 59);  
        day.set(Calendar.SECOND, 59);  
        day.set(Calendar.MILLISECOND, 999);  
        return day.getTime();  
    } 
}


相关文章
|
人工智能 JSON Java
列表结构与树结构转换分析与工具类封装(java版)
本文介绍了将线性列表转换为树形结构的实现方法及工具类封装。核心思路是先获取所有根节点,将其余节点作为子节点,通过递归构建每个根节点的子节点。关键在于节点需包含 `id`、`parentId` 和 `children` 三个属性。文中提供了两种封装方式:一是基于基类 `BaseTree` 的通用工具类,二是使用函数式接口实现更灵活的方式。推荐使用后者,因其避免了继承限制,更具扩展性。代码示例中使用了 Jackson 库进行 JSON 格式化输出,便于结果展示。最后总结指出,理解原理是进一步优化和封装的基础。
546 0
|
缓存 前端开发 Java
【前端学java】java基础巩固复习巩固语法练习-工具类的封装(14)
【8月更文挑战第10天】java基础巩固,工具类的封装
203 1
【前端学java】java基础巩固复习巩固语法练习-工具类的封装(14)
|
算法 搜索推荐 Java
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
这篇文章介绍了如何使用Java后端技术,结合Graphics2D和Echarts等工具,生成包含个性化信息和图表的海报,并提供了详细的代码实现和GitHub项目链接。
1225 0
java 后端 使用 Graphics2D 制作海报,画echarts图,带工具类,各种细节:如头像切割成圆形,文字换行算法(完美实验success),解决画上文字、图片后不清晰问题
|
Java
Java 些许公共工具类
Java 些许公共工具类
165 1
Java应用结构规范问题之在UnitConvertUtils工具类将千米转换为米的问题如何解决
Java应用结构规范问题之在UnitConvertUtils工具类将千米转换为米的问题如何解决
361 8
|
设计模式 缓存 算法
编写高效的Java工具类:实用技巧与设计模式
编写高效的Java工具类:实用技巧与设计模式
|
设计模式 存储 安全
Java面试题:设计一个线程安全的单例类并解释其内存占用情况?使用Java多线程工具类实现一个高效的线程池,并解释其背后的原理。结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
Java面试题:设计一个线程安全的单例类并解释其内存占用情况?使用Java多线程工具类实现一个高效的线程池,并解释其背后的原理。结合观察者模式与Java并发框架,设计一个可扩展的事件处理系统
543 1
|
安全 Java 开发者
Java中的并发工具类与线程安全实现
Java中的并发工具类与线程安全实现
|
设计模式 缓存 算法
编写高效的Java工具类:实用技巧与设计模式
编写高效的Java工具类:实用技巧与设计模式
|
并行计算 Java API
Java中的并发工具类详解
Java中的并发工具类详解