Java日期加减

1 篇文章 0 订阅

用到的包:

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

1、获取当前系统时间日期减1

Calendar date = Calendar.getInstance();
date.setTime(new Date());
date.set(Calendar.DATE, date.get(Calendar.DATE) - 1);

此时得到的date对象进行输出,结果为

java.util.GregorianCalendar[time=?,areFieldsSet=false,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Shanghai",offset=28800000,dstSavings=0,useDaylight=false,transitions=19,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2018,MONTH=7,WEEK_OF_YEAR=35,WEEK_OF_MONTH=5,DAY_OF_MONTH=27,DAY_OF_YEAR=240,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=2,HOUR_OF_DAY=14,MINUTE=10,SECOND=33,MILLISECOND=108,ZONE_OFFSET=28800000,DST_OFFSET=0]

里面的内容是非常多的,只需要时间即可

System.out.println(date.getTime());
// Mon Aug 27 14:10:33 CST 2018

还需要修改输出的格式,

// 按 2018-01-01 格式
SimpleDateFormat dateFormat1 = new SimpleDateFormat("yyyy-MM-dd");
// 按 2018-01-01 00:00:00 格式
SimpleDateFormat dateFormat2 = new SimpleDateFormat("yyyy-MM-dd mm:HH:ss");

// 将时间转为需要的字符串
String timeStr1 = dateFormat.format(date.getTime());
String timeStr2 = dateFormat.format(date.getTime());

System.out.println(timeStr1);
System.out.println(timeStr2);


// 输出为
//2018-08-27
//2018-08-27 17:14:49


2、输入时间字符串转时间在减1

如输入的时间为字符串形式的 “2018-01-01 00:00:00”,先转为Date类型,然后和处理获取的系统时间一样。

SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd mm:HH:ss");
try {
	Date date = dateFormat.parse("2018-01-01 00:00:00");
} catch (ParseException e) {
	e.printStackTrace();
}

Calendar date = Calendar.getInstance();
date.setTime(new Date());
date.set(Calendar.DATE, date.get(Calendar.DATE) - 1);
String timeStr = dateFormat.format(date.getTime());
System.out.println(timeStr);

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值