java Date操作

//获得本年第一天的日期 
public Date getCurrentYearFirst(){
int yearPlus = getYearPlus();
GregorianCalendar currentDate = new GregorianCalendar();
currentDate.add(GregorianCalendar.DATE,yearPlus);
Date yearDay = currentDate.getTime();
Calendar calendar =  Calendar.getInstance();
calendar.setTime(yearDay);  
calendar.set(Calendar.HOUR, 0);     //0时
calendar.set(Calendar.MINUTE, 0);     //0分
calendar.set(Calendar.SECOND, 0);     //0秒
yearDay = calendar.getTime();
return yearDay;
}
//获得今年的年份
private int getYearPlus(){
Calendar cd = Calendar.getInstance();
int yearOfNumber = cd.get(Calendar.DAY_OF_YEAR);//获得当天是一年中的第几天
cd.set(Calendar.DAY_OF_YEAR,1);//把日期设为当年第一天
cd.roll(Calendar.DAY_OF_YEAR,-1);//把日期回滚一天。
int MaxYear = cd.get(Calendar.DAY_OF_YEAR);
if(yearOfNumber == 1){
return -MaxYear;
}else{
return 1-yearOfNumber;
}
}
//判断beginDate 至 endDate 是否包含 betweentDate
private boolean betweentTowDate(Date beginDate,Date betweentDate,Date endDate){
if(null==beginDate||null==endDate||null==betweentDate){
return false;
}
if(beginDate.getTime()<betweentDate.getTime()&&endDate.getTime()>betweentDate.getTime()){
return true;
}else{
return false;
}
}
//判断beginDate1至endDate1时间段是否与beginDate2至endDate2时间段有交集
private boolean intersectTime(Date beginDate1,Date endDate1,Date beginDate2,Date endDate2){
if(null==beginDate1||null==endDate1||null==beginDate2||null==endDate2){
return false;
}
long a1 = beginDate1.getTime();
long a2 = endDate1.getTime();
long b1 = beginDate2.getTime();
long b2 = endDate2.getTime();
if((a2<=b2 && a2>=b1) || (a1<=b2 && a1>=b1)  || (b1<a1 && b2>a2)){
return true;
}else{
return false;
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值