Java中的Calendar类是一个抽象类,它提供了在特定时间点和一组日历字段(如MONTH、YEAR、HOUR等)之间转换日期的方法。它继承Object类并实现Comparable、Serializable、Cloneable接口。
由于它是一个抽象类,所以我们不能使用构造函数来创建实例。相反,我们必须使用静态方法 Calendar.getInstance() 来实例化并实现sub-class。
- Calendar.getInstance():返回基于默认时区、默认区域设置的当前时间的 Calendar 实例。
- Calendar.getInstance(时区)
- Calendar.getInstance(区域设置 aLocale)
- Calendar.getInstance(TimeZone zone, Locale aLocale)
Java程序演示getInstance()方法:
// 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
Important Methods and their usage
METHOD | DESCRIPTION |
---|---|
抽象无效添加(int字段,int数量) | 它用于根据日历的规则向给定日历字段添加或减去指定的时间量。 |
int get(int 字段) | 它用于返回给定日历字段的值。 |
摘要 int getMaximum(int 字段) | 它用于返回此 Calendar 实例的给定日历字段的最大值。 |
摘要 int getMinimum(int 字段) | 它用于返回此 Calendar 实例的给定日历字段的最小值。 |
日期getTime() | 它用于返回表示此日历的时间值的 Date 对象。</td |
以下示例程序旨在说明上述方法:
程序1::Java程序演示get()方法。
// 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::Java程序演示getMaximum()方法。
// 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::Java程序演示getMinimum()方法。
// 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::Java程序演示add()方法。
// 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
相关用法
- Java Calendar Clone()用法及代码示例
- Java Calendar ComputeFields()用法及代码示例
- Java Calendar after()用法及代码示例
- Java Calendar equals()用法及代码示例
- Java Calendar getAvailableCalendarTypes()用法及代码示例
- Java Calendar getCalendarType()用法及代码示例
- Java Calendar getWeekYear()用法及代码示例
- Java Calendar getWeeksInWeekYear()用法及代码示例
- Java Calendar isWeekDateSupported()用法及代码示例
- Java Calendar setMinimalDaysInFirstWeek()用法及代码示例
- Java Calendar setTimZone()用法及代码示例
- Java Calendar setWeekDate()用法及代码示例
- Java Calendar toInstant()用法及代码示例
- Java Calendar before()用法及代码示例
- Java Calendar add()用法及代码示例
- Java Calendar clear()用法及代码示例
- Java Calendar clone()用法及代码示例
- Java Calendar compareTo()用法及代码示例
- Java Calendar complete()用法及代码示例
- Java Calendar computeFields()用法及代码示例
- Java Calendar computeTime()用法及代码示例
- Java Calendar get()用法及代码示例
- Java Calendar getActualMaximum()用法及代码示例
- Java Calendar getActualMinimum()用法及代码示例
- Java Calendar getAvailableLocales()用法及代码示例
注:本文由纯净天空筛选整理自Poojitha Reddy 1大神的英文原创作品 Calendar Class in Java with examples。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。