学习java第一阶段:java 时间

/** *获取某月最初一天 *

  • */ public static Date getMonthAnyStartDay(Date date,int start) throws ParseException{ SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd"); Calendar caleFirst = Calendar.getInstance(TimeZone.getTimeZone("Japan") ,Locale.JAPAN); caleFirst.setTime(date); caleFirst.add(Calendar.MONTH, start); caleFirst.set(Calendar.DAY_OF_MONTH,1); Date firstDay = format.parse(format.format(caleFirst.getTime())); return firstDay; }
/**
 *获取某月最后一天
 *
 * */
public static Date getMonthAnyEndDay(Date date,int end) throws ParseException{
    SimpleDateFormat format = new SimpleDateFormat("yyyy/MM/dd");
    Calendar caleLast = Calendar.getInstance(TimeZone.getTimeZone("Japan") ,Locale.JAPAN);
    caleLast.setTime(date);
    caleLast.add(Calendar.MONTH, end);
    caleLast.set(Calendar.DAY_OF_MONTH, caleLast.getActualMaximum(Calendar.DAY_OF_MONTH));
    Date  lastDay = format.parse(format.format(caleLast.getTime()));
    return lastDay;
}

/**
复制代码

*获取某月份的前几月或者后几月 *

  • */ public static Date getMonthStart(Date date,int month) throws ParseException{ SimpleDateFormat format = new SimpleDateFormat("yyyy/MM"); Calendar caleFirst = Calendar.getInstance(TimeZone.getTimeZone("Japan") ,Locale.JAPAN); caleFirst.setTime(date); caleFirst.add(Calendar.MONTH, month); Date m3 = caleFirst.getTime(); return m3; }

/** *

  • 计算两个日期间相差天数
  • */ public static long dayDiff(String startDate, String endDate,String format) { SimpleDateFormat formater = new SimpleDateFormat(format); long diff = 0l; try { long d1 = formater.parse(startDate).getTime(); long d2 = formater.parse(endDate).getTime(); diff = (d1 - d2) / (1000 * 60 * 60 * 24); } catch (ParseException e) { e.printStackTrace(); } return diff; }

/** *获取某天的前几天或者后几天 *

  • */ public static Date addDate(Date date, int days) { Calendar cal = Calendar.getInstance(TimeZone.getTimeZone("Japan") ,Locale.JAPAN); cal.setTime(date); cal.add(Calendar.DATE, days); return cal.getTime(); }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值