如何在java中为日期添加2周?
我在实例化点从对象获取一个日期,为了输出,我需要在该日期前再加两周。我想知道我将如何添加到它,以及我的语法目前是否正确 当前Java:如何在java中为日期添加2周?,java,datetime,Java,Datetime,我在实例化点从对象获取一个日期,为了输出,我需要在该日期前再加两周。我想知道我将如何添加到它,以及我的语法目前是否正确 当前Java: private final DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss"); private Date dateOfOrder; private void setDateOfOrder() { //Get current date time with Date()
private final DateFormat dateFormat = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
private Date dateOfOrder;
private void setDateOfOrder()
{
//Get current date time with Date()
dateOfOrder = new Date();
}
public Date getDateOfOrder()
{
return dateOfOrder;
}
这个语法正确吗?另外,我想制作一个getter,返回预计发货日期,即订单日期后14天,我不确定如何添加和减去当前日期。使用日历并设置当前时间,然后使用日历的添加方法 试试这个:
int noOfDays = 14; //i.e two weeks
Calendar calendar = Calendar.getInstance();
calendar.setTime(dateOfOrder);
calendar.add(Calendar.DAY_OF_YEAR, noOfDays);
Date date = calendar.getTime();
试着增加两周
long date = System.currentTimeMillis() + 14 * 24 * 3600 * 1000;
Date newDate = new Date(date);
使用日历
Date date = ...
Calendar c = Calendar.getInstance();
c.setTime(date);
c.add(Calendar.WEEK_OF_MONTH, 2);
date = c.getTime();
如果您使用的是Java8,那么可以使用新的日期时间api
如果您使用的是java 7或更旧版本的java,则应使用旧api如果将14传递给此addDate方法,它将向当前日期添加14并返回
public String addDate(int days) throws Exception {
final DateFormat dateFormat1 = new SimpleDateFormat(
"yyyy/MM/dd HH:mm:ss");
Calendar c = Calendar.getInstance();
c.setTime(new Date()); // Now use today date.
c.add(Calendar.DATE, addDays); // Adding 5 days
return dateFormat1.format(c.getTime());
}
使用Joda时间库将更容易,并将处理夏令时、其他异常和时区
java.util.Date date = new DateTime( DateTimeZone.forID( "America/Denver" ) ).plusWeeks( 2 ).withTimeAtStartOfDay().toDate();
我将向您展示如何在Java8中实现这一点。给你:
public class DemoDate {
public static void main(String[] args) {
LocalDate today = LocalDate.now();
System.out.println("Current date: " + today);
//add 2 week to the current date
LocalDate next2Week = today.plus(2, ChronoUnit.WEEKS);
System.out.println("Next week: " + next2Week);
}
}
输出:
Current date: 2016-08-15
Next week: 2016-08-29
爪哇8岩石 谢谢!我不知道有一个日历类可以这样操作@帕格斯:不客气。。。也要接受这个答案,这样其他大家都知道的未来的日子加起来会是一个整数吗?或者其他数据类型?是的!如果它起作用,我一定会这么做@PugsOverDrugs是的,它是一个整数类型。