Date工具

package com.other.helper;


import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;


/**
 * 日期工具类:<br />
 * @author Jackie
 * @since 2015-09-08
 * @version 1.0.0
 */
public class DateHelp {

/**
* 求x小时后(前)的时间 
* @param date 时间
* @param hour 小时(+为小时后,-为小时前)
* @return 计算后的时间
*/
public static Date addHours(Date date,int hour){
Calendar cal= Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.HOUR_OF_DAY, hour);
return cal.getTime();
}

/**
* 求x天后(前)的时间 
* @param date 时间
* @param day 天(+为x天后,-为x天前)
* @return 计算后的时间
*/
public static Date addDays(Date date,int day){
Calendar cal= Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.DATE, day);
return cal.getTime();
}

/**
* 求x月后(前)的时间 
* @param date 时间
* @param month 月(+为x月后,-为x月前)
* @return 计算后的时间
*/
public static Date addMonths(Date date,int month){
Calendar cal= Calendar.getInstance();
cal.setTime(date);
cal.add(Calendar.MONTH, month);
return cal.getTime();
}

/**
* 字符串转换成Date类型

* @param date  时间字符串
* @param type  时间格式
* @return
*/
public static Date stringToDate(String date, String type){
SimpleDateFormat sdf = new SimpleDateFormat(type);                
Date newdate = new Date();
try {
newdate = sdf.parse(date);
} catch (ParseException e) {
e.printStackTrace();

return newdate;
}

/**
* Date类型转换成字符串

* @param date  时间
* @param type  时间格式
* @return
*/
public static String dateToString(Date date, String type){
if(date == null){
return null;
}
SimpleDateFormat sdf = new SimpleDateFormat(type);              
String dateString = sdf.format(date);
return dateString;
}

/**  
     * 计算两个日期之间相差的时间(x天x时)  
     * @param date1  小
     * @param date2  大
     * @return  
     */  
    public static String hoursBetween(Date date1,Date date2){
    if(date1 == null){
    date1 = new Date();
    }
    if(date2 == null){
    date2 = new Date();
    }
        Calendar cal = Calendar.getInstance();   
        cal.setTime(date1);   
        long time1 = cal.getTimeInMillis();                
        cal.setTime(date2);   
        long time2 = cal.getTimeInMillis();        
        long between_hours = (time2-time1)/(1000*60*60);
       return between_hours/24+"天"+(between_hours-(between_hours/24)*24)+"时";          
    } 

/**
* 目标时间与当前时间相比 是否已过期
* @param date 目标时间
* @return true已过期/false未过期
*/
public static boolean expired(Date date){
if(date == null){
return false;
}
return ((new Date()).getTime()-date.getTime()) > 0 ? true:false;
}

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值