Java 如何为当前时间和日期增加天数

Java 如何为当前时间和日期增加天数

在学习如何增加和减少日期之前,人们必须先熟悉Java日历类。在本节中,我们将通过实例来讨论 如何在Java中为当前时间和日期增加天数

Java日历API的add()函数是独一无二的,它为指定的单位增加给定的整数。

Java日历类提供了在某个时间点和一些日历字段之间转换日期的方法,如MONTH、YEAR、HOUR等。它是Objects的一个子类,支持Comparable、Serializable以及Cloneable接口。

因为它是一个抽象类,所以我们无法使用函数Object() { [本地代码] }来创建它的实例。我们必须使用静态方法Calendar来设计和实现一个子类。 getInstance()。

使用默认时区的当前时间和默认区域设置,Calendar.getInstance()返回一个日历对象。

Calendar.getInstance(TimeZone z)

Calendar.getInstance(Locale aL)

Calendar.getInstance(TimeZone z, Locale aL)

在Java中递减日期

请遵守下面的说明,在Java中减少日期。

在Java日历类中添加以下包。

import java.util.Calendar ;

首先,创建一个日历对象,然后在其上显示当前日期。

Calendar c = Calendar.getInstance();
System.out.println(" The present date is : " +c.getTime());

让我们使用add()方法以及Calendar来递减现在的日期。DATE不变。由于日期正在减少,所以设置一个负数。

c.add(Calendar.DATE,-2);

文件名:Decrement.java

import java.util.Calendar;
public class Decrement {
   public static void main(String args[]) {
      Calendar c = Calendar.getInstance() ;
      System.out.println(" The present Date is = " + c.getTime()) ;
      // Decreasing the present date by 2
      c.add(Calendar.DATE, -2) ;
      System.out.println(" The date after decreasing is = " + c.getTime()) ;
   }
}

输出

The present Date is = Thu Jan 19 16:12:39 IST 2023
 The date after decreasing is = Tue Jan 17 16:12:39 IST 2023

在Java中增加日期

请遵守下面的说明,在Java中增加日期。

在Java日历类中添加以下包。

import java.util.Calendar ;

首先创建一个日历对象,然后在上面显示当前日期。

Calendar c = Calendar.getInstance();
System.out.println(" The present date is : " +c.getTime());

让我们使用add()方法以及日历来增加现在的日期。DATE不变。由于日期被增加,所以设置一个正数。

c.add(Calendar.DATE, 3);

文件名:Increment.java

import java.util.Calendar;
public class Increment {
   public static void main(String args[]) {
      Calendar c = Calendar.getInstance() ;
      System.out.println(" The present Date is = " + c.getTime()) ;
      // increasing the present date by 2
      c.add(Calendar.DATE, 2) ;
      System.out.println(" The date after increasing is = " + c.getTime()) ;
   }
}

输出

The present Date is = Thu Jan 19 16:17:03 IST 2023
 The date after increasing is = Sat Jan 21 16:17:03 IST 2023

一个同时显示日期递增和递减的程序。

文件名:IncrementAndDecrement.java

import java.util.Calendar;
public class IncrementAndDecrement {
   public static void main(String args[]) {
      Calendar c = Calendar.getInstance() ;
      System.out.println(" The present Date is = " + c.getTime()) ;
      // Decreasing the date by 3
      c.add(Calendar.DATE, -3) ;
      System.out.println(" The date before 3 days= " + c.getTime()) ;


      // Increasing the date by 6
      c.add(Calendar.DATE, 9) ;
      System.out.println(" The date after 6 days = " + c.getTime()) ;
   }
}

输出

The present Date is = Thu Jan 19 16:22:40 IST 2023
 The date before 3 days= Mon Jan 16 16:22:40 IST 2023
 The date after 6 days = Wed Jan 25 16:22:40 IST 2023

请看下面一节中的示例,它将当前日期增加了3年2个月和1天。

文件名:AddingDays.java

import java.text.SimpleDateFormat ;
import java.util.Calendar ;
import java.util.Date ;
public class AddingDays {
    public static void main(String args[]) {
        // creating the present date in java
        Date d = new Date() ;       
        //outputting the date in user reading format.
        SimpleDateFormat dF = new SimpleDateFormat("yyyy-MM-dd") ;
        String dS = dF.format(d) ;
        System.out.println(" The present date is : "+dS) ;
        // creating the instance for calendar class 
        Calendar c = Calendar.getInstance();
        c.setTime(d) ;      
        // adding 3 years, 2 months, and 1 day
        c.add(Calendar.YEAR, 3) ;
        c.add(Calendar.MONTH, 2) ;
        c.add(Calendar.DATE, 1) ;
        // getting the new date from the calendar
        Date d1 = c.getTime() ;     
        // printing the new date
        String newDate = dF.format(d1) ;
        System.out.println(" The updated date is : "+newDate) ;

    }
}

输出

The present date is : 2023-01-19
The updated date is : 2026-03-20

让我们来看看下面这个例子,它的时间跨度从现在开始往前推3年2个月零1天。

文件名:DecreasingDays.java

import java.text.SimpleDateFormat ;
import java.time.LocalDateTime ;
import java.time.ZoneId ;
import java.time.format.DateTimeFormatter ;
import java.util.Date ;
public class DecreasingDays {
    public static void main(String args[]) {
        // The formats of the date 
        String f = "yyyy-MM-dd hh:mm:ss" ;
        SimpleDateFormat dF = new SimpleDateFormat(f) ;
        // The Date format in terms of java 8
        DateTimeFormatter dF8 = DateTimeFormatter.ofPattern(f) ;

        // creating the date in java
        Date d = new Date() ;
        //outputting the date in user reading format.
        String dS = dF.format(d) ;
        System.out.println(" The present date is : " + dS) ;
        // manipulating the date to LocalDateTime
        LocalDateTime local = d.toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime() ;
        System.out.println(" localDateTime : " + dF8.format(local)) ;
        local = local.minusYears(3) ;
        local = local.minusMonths(2) ;
        local = local.minusDays(1) ;
        local = local.minusHours(3).minusMinutes(2).minusSeconds(1) ;
        // manupulating the LocalDateTime to Date
        Date d1 = Date.from(local.atZone(ZoneId.systemDefault()).toInstant()) ;
        // outputting the new date
        String newDate = dF.format(d1);
        System.out.println(" The updated date after going back 3 years is : " + newDate);
    }
}

输出

The present date is : 2023-01-19 04:38:26
 localDateTime : 2023-01-19 04:38:26
 The updated date after going back 3 years is : 2019-11-18 01:36:25

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程