java.util.Calendar

1 java.util.Calendar介绍

Java Calendar类是一个抽象类,它提供用于在特定时间点和一组日历字段(如MONTH,YEAR,HOUR等)之间转换日期的方法。它继承Object类并实现Comparable接口。

2 java.util.Calendar声明

让我们看看java.util.Calendar类的声明。

public abstract class Calendar extends Object   
implements Serializable, Cloneable, Comparable<Calendar>  

3 java.util.Calendar方法

方法 描述
public void add(int field, int amount) 将指定的(签名)时间量添加到给定的日历字段中。
public boolean after (Object when) 如果此Calendar表示的时间晚于when对象表示的时间,则该方法返回true。
public boolean before(Object when) 如果此Calendar表示的时间早于when对象表示的时间,则该方法返回true。
public final void clear(int field) 设置给定的日历字段值和未定义此日历的时间值。
public Object clone() 克隆方法提供当前对象的副本。
public int compareTo(Calendar anotherCalendar) Calendar类的compareTo() 方法比较两个日历对象之间的时间值(毫秒偏移量)。
protected void complete() 它将填充日历字段中所有未设置的字段。
protected abstract void computeFields() 它将当前毫秒时间值time转换为fields[]中的日历字段值。
protected abstract void computeTime() 它将fields[]中的当前日历字段值转换为毫秒时间值time。
public boolean equals(Object object) equals() 方法比较两个对象是否相等,如果相等,则返回true。
public int get(int field) 在get() 方法中,将日历的字段作为参数传递,并且此方法返回作为参数传递的字段的值。
public int getActualMaximum(int field) 返回作为参数传递给getActualMaximum() 方法的日历字段的最大可能值。
public int getActualMinimum(int field) 返回作为参数传递给getActualMinimum() 方法的日历字段的最小可能值。
public static Set<String> getAvailableCalendarTypes() 返回一个包含Java Runtime Environment支持的所有可用日历类型的字符串集的集合。
public static Locale[] getAvailableLocales() 返回Java运行时环境中所有可用语言环境的数组。
public String getCalendarType() 以字符串形式返回Java Runtime Environment支持的所有可用日历类型。
public String getDisplayName(int field, int style, Locale locale) 返回以给定样式和本地形式作为参数传递的日历字段值的String表示形式。
public Map<String,Integer> getDisplayNames(int field, int style, Locale locale) 返回给定样式和本地作为参数传递的日历字段值的Map表示形式。
public int getFirstDayOfWeek() 以整数形式返回一周中的第一天。
public abstract int getGreatestMinimum(int field) 此方法返回作为参数传递的Calendar字段的最高最小值。
public static Calendar getInstance() 此方法与Calendar对象一起使用,以根据Java运行时环境设置的当前时区获取Calendar的实例。
public abstract int getLeastMaximum(int field) 返回指定为方法参数的字段的所有最大值中的最小值。
public abstract int getMaximum(int field) 此方法与日历对象一起使用,以获取指定日历字段的最大值作为参数。
public int getMinimalDaysInFirstWeek() 以整数形式返回所需的最少天数。
public abstract int getMinimum(int field) 此方法与日历对象一起使用,以获取指定日历字段的最小值作为参数。
public final Date getTime() 此方法获取日历对象的时间值并返回日期。
public long getTimeInMillis() 返回当前时间(以毫秒为单位)。此方法具有返回类型。
public TimeZone getTimeZone() 此方法获取日历对象的TimeZone并返回一个TimeZone对象。
public int getWeeksInWeekYear() 返回每周的总周数。年份中的星期以整数形式返回。
public int getWeekYear() 此方法获取当前日历表示的星期。
public int hashCode() Java中的所有其他类重载hasCode()方法。此方法返回日历对象的哈希码。
protected final int internalGet(int field) 此方法返回作为参数传递的日历字段的值。
public boolean isLenient() 返回布尔值。如果此日历的解释模式宽松,则为true;否则为true。否则为假。
public final boolean isSet(int field) 此方法检查是否已设置指定字段作为参数。如果未设置,则返回false,否则返回true。
public boolean isWeekDateSupported() 检查此日历是否支持星期日期。默认值为false。
public abstract void roll(int field, boolean up) 此方法以一个单位增加或减少指定的日历字段,而不影响另一个字段
public void set(int field, int value) 通过指定的值设置指定的日历字段。
public void setFirstDayOfWeek(int value) 设置一周的第一天。将要设置为一周的第一天的值作为参数传递。
public void setMinimalDaysInFirstWeek(int value) 设置第一周所需的最少天数。将在第一周设置为最少天数的值作为参数传递。
public final void setTime(Date date) 设置当前日历对象的时间。作为参数传递的Date对象ID。
public void setTimeInMillis(long millis) 设置当前时间(以毫秒为单位)。
public void setTimeZone(TimeZone value) 将传递的TimeZone值(对象)设置为TimeZone作为参数。
public void setWeekDate(int weekYear, int weekOfYear, int dayOfWeek) 使用指定的整数值作为参数设置当前日期。这些值是weekYear,weekOfYear和dayOfWeek。
public final Instant toInstant() toInstant() 方法将当前对象转换为即时对象。
public String toString() 返回当前对象的字符串表示形式。

4 java.util.Calendar案例1

/**
* www.yiidian.com 一点教程网
*/
import java.util.Calendar;  
public class CalendarExample1 {  
   public static void main(String[] args) {  
   Calendar calendar = Calendar.getInstance();  
   System.out.println("The current date is : " + calendar.getTime());  
   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());  
   }  
}  

输出结果为:

The current date is : Thu Jan 19 18:47:02 IST 2017
15 days ago: Wed Jan 04 18:47:02 IST 2017
4 months later: Thu May 04 18:47:02 IST 2017
2 years later: Sat May 04 18:47:02 IST 2019

5 java.util.Calendar案例2

/**
* www.yiidian.com 一点教程网
*/
import java.util.*;  
public class CalendarExample2{  
  public static void main(String[] args) {  
   Calendar calendar = Calendar.getInstance();  
   System.out.println("At present Calendar's Year: " + calendar.get(Calendar.YEAR));  
   System.out.println("At present Calendar's Day: " + calendar.get(Calendar.DATE));  
   }  
}  

输出结果为:

At present Calendar's Year: 2017
At present Calendar's Day: 20

6 java.util.Calendar案例3

/**
* www.yiidian.com 一点教程网
*/
import java.util.*;  
public class CalendarExample3{  
   public static void main(String[] args) {  
   Calendar calendar = Calendar.getInstance();  
   System.out.print("At present Date And Time Is: " + calendar.getTime());  
   }  
}  

输出结果为:

At present Date And Time Is: Fri Jan 20 14:26:19 IST 2017

7 java.util.Calendar案例4

/**
* www.yiidian.com 一点教程网
*/
import java.util.*;  
public class CalendarExample4 {  
   public static void main(String[] args) {  
   Calendar calendar = Calendar.getInstance();  
   int maximum = calendar.getMaximum(Calendar.DAY_OF_WEEK);  
   System.out.println("Maximum number of days in week: " + maximum);  
   maximum = calendar.getMaximum(Calendar.WEEK_OF_YEAR);  
   System.out.println("Maximum number of weeks in year: " + maximum);  
   }  
}  

输出结果为:

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

8 java.util.Calendar案例5

/**
* www.yiidian.com 一点教程网
*/
import java.util.*;  
public class CalendarExample5 {  
   public static void main(String[] args) {  
   Calendar cal = Calendar.getInstance();  
   int maximum = cal.getMinimum(Calendar.DAY_OF_WEEK);  
   System.out.println("Minimum number of days in week: " + maximum);  
   maximum = cal.getMinimum(Calendar.WEEK_OF_YEAR);  
   System.out.println("Minimum number of weeks in year: " + maximum);  
   }  
} 

输出结果为:

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

 

热门文章

优秀文章