Java日期时间处理常用方法

虽然是老生常谈,但整理出来还是有点用。

1.由字符串时间得到Date类型时间

复制代码
    // 由字符串时间得到Date类型时间
    public static Date getDateFrom(String strDate){
        try{
            SimpleDateFormat sdf =   new SimpleDateFormat("yyyy-MM-dd");
            Date date = sdf.parse(strDate);
            return date;
        }
        catch(Exception ex){
            return null;
        }
    }
复制代码

2.由Date类型时间得到字符串时间

复制代码
// 由Date类型时间得到字符串时间
    public static String getDateStrFrom(Date date){
        try{
            Format formatter = new SimpleDateFormat("yyyy-MM-dd");
            return formatter.format(date);
        }
        catch(Exception ex){
            return null;
        }
    }
复制代码

3.得到几天前的时间

复制代码
    /**
     * 得到几天前的时间
     * 
     * @param d
     * @param day
     * @return
     */
    public static String getDateBefore(Date d, int day) {
        Calendar now = Calendar.getInstance();
        now.setTime(d);
        now.set(Calendar.DATE, now.get(Calendar.DATE) - day);
        
        Format formatter = new SimpleDateFormat("yyyy-MM-dd");
        return formatter.format(now.getTime());
    }
复制代码

4.使用Date类型的before和after函数进行日期的比较

复制代码
        for(DateRangeHour drh:lsTen){
            
            for(Object obj:ls){
                DateHour d=(DateHour)obj;
                
                if(d.getDate().before(drh.getEndDate()) && d.getDate().after(drh.getStartDate())){
                    drh.hours+=d.getHours();
                }
            }
        }
复制代码

 

posted @   逆火狂飙  阅读(1254)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)
生当作人杰 死亦为鬼雄 至今思项羽 不肯过江东
点击右上角即可分享
微信分享提示