java第一阶段_学习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();

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值