Java中的Calendar类及其示例

Java中的Calendar类是一个抽象类,它提供了在特定时间和一组日历字段(如月、年、小时等)之间转换日期的方法。它继承了对象类,并实现了可比较、可序列化、可克隆的接口。

null

因为它是一个抽象类,所以我们不能使用构造函数来创建实例。相反,我们将不得不使用静态方法Calendar。getInstance()来实例化和实现一个子类。

  • 日历getInstance():根据默认时区中的当前时间和默认语言环境返回日历实例。
  • 日历getInstance(时区)
  • 日历getInstance(语言环境aLocale)
  • 日历getInstance(时区、语言环境)

演示getInstance()方法的Java程序 :

// Date getTime(): It is used to return a
// Date object representing this
// Calendar's time value.
import java.util.*;
public class Calendar1 {
public static void main(String args[])
{
Calendar c = Calendar.getInstance();
System.out.println( "The Current Date is:" + c.getTime());
}
}


输出:

The Current Date is:Tue Aug 28 11:10:40 UTC 2018

重要方法及其使用

方法 描述
摘要无效添加(整型字段,整型金额) 它用于根据日历的规则向给定的日历字段添加或减去指定的时间量。

int get(int字段) 它用于返回给定日历字段的值。

抽象int getMaximum(int字段) 它用于返回此日历实例的给定日历字段的最大值。
抽象整型getMinimum(整型字段) 它用于返回此日历实例的给定日历字段的最小值。
Date getTime() 它用于返回表示此日历时间值的日期对象

以下程序说明了上述方法:

方案1 :演示get()方法的Java程序。

// Program to demonstrate get() method
// of Calendar class
import java.util.*;
public class Calendar2 {
public static void main(String[] args)
{
// creating Calendar object
Calendar calendar = Calendar.getInstance();
// Demonstrate Calendar's get()method
System.out.println( "Current Calendar's Year: " + calendar.get(Calendar.YEAR));
System.out.println( "Current Calendar's Day: " + calendar.get(Calendar.DATE));
System.out.println( "Current MINUTE: " + calendar.get(Calendar.MINUTE));
System.out.println( "Current SECOND: " + calendar.get(Calendar.SECOND));
}
}


输出:

Current Calendar's Year: 2018
Current Calendar's Day: 28
Current MINUTE: 10
Current SECOND: 45

方案2 :演示getMaximum()方法的Java程序。

// Program to demonstrate getMaximum() method
// of Calendar class
import java.util.*;
public class Calendar3 {
public static void main(String[] args)
{
// creating calendar object
Calendar calendar = Calendar.getInstance();
int max = calendar.getMaximum(Calendar.DAY_OF_WEEK);
System.out.println( "Maximum number of days in a week: " + max);
max = calendar.getMaximum(Calendar.WEEK_OF_YEAR);
System.out.println( "Maximum number of weeks in a year: " + max);
}
}


输出:

Maximum number of days in a week: 7
Maximum number of weeks in a year: 53

方案3 :演示getMinimum()方法的Java程序。

// Program to demonstrate getMinimum() method
// of Calendar class
import java.util.*;
public class Calendar4 {
public static void main(String[] args)
{
// creating calendar object
Calendar calendar = Calendar.getInstance();
int min = calendar.getMinimum(Calendar.DAY_OF_WEEK);
System.out.println( "Minimum number of days in week: " + min);
min = calendar.getMinimum(Calendar.WEEK_OF_YEAR);
System.out.println( "Minimum number of weeks in year: " + min);
}
}


输出:

Minimum number of days in week: 1
Minimum number of weeks in year: 1

方案4 :演示add()方法的Java程序。

// Program to demonstrate add() method
// of Calendar class
import java.util.*;
public class Calendar5 {
public static void main(String[] args)
{
// creating calendar object
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DATE, - 15 );
System.out.println( "15 days ago: " + calendar.getTime());
calendar.add(Calendar.MONTH, 4 );
System.out.println( "4 months later: " + calendar.getTime());
calendar.add(Calendar.YEAR, 2 );
System.out.println( "2 years later: " + calendar.getTime());
}
}


输出:

15 days ago: Mon Aug 13 11:10:57 UTC 2018
4 months later: Thu Dec 13 11:10:57 UTC 2018
2 years later: Sun Dec 13 11:10:57 UTC 2020

参考: https://docs.oracle.com/javase/7/docs/api/java/util/Calendar.html

© 版权声明
THE END
喜欢就支持一下吧
点赞7 分享