Java วันที่เวลา

แพคเกจ java.util วันให้เรียนเพื่อแค็ปซูลวันที่และเวลาปัจจุบัน ระดับวันที่มีสองก่อสร้างงานอินสแตนซ์วันที่วางวัตถุ

ตัวสร้างครั้งแรกที่ใช้วันและเวลาปัจจุบันในการเริ่มต้นวัตถุ

Date( )

ตัวสร้างสองรับพารามิเตอร์ซึ่งเป็นจำนวนมิลลิวินาทีตั้งแต่ 1 มกราคม 1970 ของ

Date(long millisec)

หลังจากวันที่วัตถุถูกสร้างขึ้นคุณสามารถเรียกวิธีการดังต่อไปนี้

เลขที่ วิธีการและรายละเอียด
1 boolean หลังจากวันที่ (Date)
หากวิธีการนี้จะถูกเรียกเมื่อวัตถุวันหลังจากวันที่ที่ระบุผลตอบแทนจริงมิฉะนั้นก็จะส่งกลับเท็จ
2 boolean ก่อนวันที่ (Date)
หากวิธีการนี้เรียกว่าเมื่อวัตถุวันก่อนวันที่ที่ระบุผลตอบแทนจริงมิฉะนั้นก็จะส่งกลับเท็จ
3 โคลนวัตถุ ()
ส่งคืนสำเนาของวัตถุนี้
4 int compareTo วันที่ (Date)
เปรียบเทียบวิธีการนี้เรียกว่าเมื่อวันที่วัตถุวันที่ที่ระบุ กลับ 0 เมื่อทั้งสองมีค่าเท่ากัน วัตถุโทรสอบถามก่อนวันที่ที่ระบุส่งกลับจำนวนลบ วัตถุโทรหลังจากวันที่ที่ระบุกลับเป็นจำนวนบวก
5 int compareTo (Object obj)
ถ้า obj เป็นประเภทวันที่การดำเนินการจะเทียบเท่ากับ compareTo (Date) มิฉะนั้นมันจะพ่น ClassCastException
6 เท่ากับบูลีนวันที่ (Object)
เมื่อคุณเรียกวิธีการนี้และวันที่วัตถุมีค่าเท่ากับวันที่ระบุเมื่อผลตอบแทนที่แท้จริงมิฉะนั้นกลับเท็จ
7 getTime ยาว ()
ก็จะส่งกลับจำนวนมิลลิวินาทีตั้งแต่ 1 มกราคม 1970 00:00:00 GMT ตัวแทนจากวัตถุวันนี้
8 int hashCode ()
ส่งคืนค่ารหัสกัญชาสำหรับวัตถุนี้
9 เป็นโมฆะ setTime (เวลานาน)

1 มกราคม 1970 ด้วยตนเอง 00:00:00 GMT มิลลิวินาทีต่อมาเวลาตั้งเวลาและวันที่
10 String toString ()
วันที่แปลงเป็นตัวแทนวัตถุ String และผลตอบแทนสตริง

รับวันและเวลาปัจจุบัน

Java ได้รับวันและเวลาปัจจุบันเป็นเรื่องง่ายมากใช้วันที่วัตถุ toString () วิธีการที่จะพิมพ์วันที่ปัจจุบันและเวลาดังต่อไปนี้:

import java.util.Date;
  
public class DateDemo {
   public static void main(String args[]) {
       // 初始化 Date 对象
       Date date = new Date();
        
       // 使用 toString() 函数显示日期时间
       System.out.println(date.toString());
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Mon May 04 09:51:52 CDT 2013

เปรียบเทียบวัน

Java ใช้สามวิธีการที่จะเปรียบเทียบสองต่อไปนี้วันที่:

  • ใช้ getTime () วิธีการที่จะได้รับวันที่สองวัน (1 มกราคม 1970 ผ่านจำนวนมิลลิวินาทีตั้งแต่) แล้วเปรียบเทียบทั้งสองค่า
  • ใช้ก่อน () หลังจาก () และเท่ากับ () ยกตัวอย่างเช่นเดือนก่อนหน้านี้ 12 กว่า 18 วันใหม่ (99, 2, 12) .before (วันที่ใหม่ (99, 2, 18)) ผลตอบแทนจริง
  • ใช้ compareTo () วิธีการซึ่งถูกกำหนดโดยอินเตอร์เฟซที่เทียบเคียงระดับวันที่ใช้อินเตอร์เฟซนี้

การใช้ SimpleDateFormat วันรูปแบบ

ระดับ SimpleDateFormat เป็นลักษณะสถานที่ที่มีความอ่อนไหวสำหรับการฟอร์แมตและแยกวัน SimpleDateFormat ช่วยให้คุณสามารถเลือกผู้ใช้กำหนดเองใด ๆ รูปแบบวันที่และเวลาในการทำงาน ตัวอย่างเช่น:

import java.util.*;
import java.text.*;

public class DateDemo {
   public static void main(String args[]) {

      Date dNow = new Date( );
      SimpleDateFormat ft = 
      new SimpleDateFormat ("E yyyy.MM.dd 'at' hh:mm:ss a zzz");

      System.out.println("Current Date: " + ft.format(dNow));
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Current Date: Sun 2004.07.18 at 04:14:09 PM PDT

การเข้ารหัสรูปแบบที่เรียบง่าย DateFormat

สตริงรูปแบบเวลาที่ถูกใช้เพื่อระบุรูปแบบเวลา ในโหมดนี้ตัวอักษร ASCII ทั้งหมดจะถูกสงวนไว้เป็นตัวอักษรรูปแบบที่กำหนดไว้ดังต่อไปนี้:

จดหมาย ลักษณะ ตัวอย่าง
G เครื่องหมายยุค AD
Y สี่ปี 2001
M เดือน เดือนกรกฎาคมหรือ 07
D วันที่เดือน 10
H AM / PM รูปแบบ (1 ~ 12) ชั่วโมง 12
H ชั่วโมงของวัน (0-23) 22
ม. จำนวนนาที 30
s วินาที 55
S มิลลิวินาที 234
E วันของสัปดาห์ วันอังคาร
D วันของปี 360
F เป็นครั้งแรกในสัปดาห์ที่ผ่านมาของเดือนของสัปดาห์ 2 (สองฟิลด์เว้นส์เดย์ในเดือนกรกฎาคม)
W ไม่กี่สัปดาห์แรกของปีนี้ 40
W เป็นครั้งแรกในสัปดาห์ที่ผ่านมาของเดือน 1
AM / PM เครื่องหมาย PM
K ชั่วโมงของวัน (1-24) 24
K AM / PM รูปแบบ (0 ~ 11) ชั่วโมง 10
Z โซนเวลา เวลามาตรฐานตะวันออก
' คั่นข้อความ คั่น
" ราคาเดียว `

วันที่ใช้รูปแบบ printf

วิธี printf สามารถจัดรูปแบบวันที่และเวลาได้อย่างง่ายดาย ใช้รูปแบบตัวอักษรสองตัวมันเริ่มต้นด้วย T และในตารางต่อไปในตอนท้ายของจดหมาย ตัวอย่างเช่น:

import java.util.Date;

public class DateDemo {

  public static void main(String args[]) {
     // 初始化 Date 对象
     Date date = new Date();

     // 使用toString()显示日期和时间
     String str = String.format("Current Date/Time : %tc", date );

     System.out.printf(str);
  }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Current Date/Time : Sat Dec 15 16:37:57 MST 2012

หากคุณต้องการที่จะทำซ้ำวันเสนอขายแล้วใช้วิธีนี้ในการจัดรูปแบบทุกส่วนหนึ่งของมันเป็นบิตซับซ้อน ดังนั้นคุณสามารถใช้รูปแบบของสตริงชี้การจัดรูปแบบพารามิเตอร์ดัชนี

ดัชนีต้อง% ทันทีหลังและจะต้องจบลงด้วย $ ตัวอย่างเช่น:

import java.util.Date;
  
public class DateDemo {

   public static void main(String args[]) {
       // 初始化 Date 对象
       Date date = new Date();
        
       // 使用toString()显示日期和时间
       System.out.printf("%1$s %2$tB %2$td, %2$tY", 
                         "Due date:", date);
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Due date: February 09, 2004

หรือคุณสามารถใช้ <ธง พารามิเตอร์มันแสดงให้เห็นการจัดรูปแบบก่อนหน้านี้จะถูกนำมาใช้อีกครั้ง ตัวอย่างเช่น:

import java.util.Date;
  
public class DateDemo {

   public static void main(String args[]) {
       // 初始化 Date 对象
       Date date = new Date();
        
       // 显示格式化时间
       System.out.printf("%s %tB %<te, %<tY", 
                         "Due date:", date);
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Due date: February 09, 2004

วันที่และเวลาการแปลงตัวอักษร

ตัวละคร ลักษณะ ตัวอย่าง
C วันที่ที่สมบูรณ์และเวลา จันทร์ 4 พฤษภาคม 2009 09:51:52 CDT
F รูปแบบวันที่ ISO 8601 2004/02/09
D รูปแบบวันที่สหรัฐ (เดือน / วัน / ปี) 2004/02/09
T เวลา 24 ชั่วโมง 18:05:19
R เวลา 12 ชั่วโมง 06:05:19
R เวลา 24 ชั่วโมงไม่รวมถึงวินาที 18:05
Y 4 ปี (กับศูนย์นำ) 2004
Y หลังจากนั้นสองปี (กับศูนย์นำ) 04
C 2 ปีที่ผ่านมา (กับศูนย์นำ) 20
B ชื่อเดือนแบบเต็ม กุมภาพันธ์
B ย่อเดือน กุมภาพันธ์
n 2 เดือน (มีศูนย์นำ) 02
D 2 วัน (กับศูนย์นำ) 03
E 2 วัน (ไม่รวมชั้นนำ 0) 9
สัปดาห์ชื่อเต็ม วันจันทร์
สัปดาห์สั้น จันทร์
J 3 ปี (มีศูนย์นำ) 069
H 2 ชั่วโมง (กับศูนย์นำ), 00-23 18
K 2 ชั่วโมง (โดยไม่ต้องนำ 0), 0-23 18
ผม 2 ชั่วโมง (กับศูนย์นำ), 01-12 06
ล. 2 ชั่วโมง (โดยไม่ต้องนำ 0), 1-12 6
M 2 นาที (พร้อมศูนย์นำ) 05
S 2 วินาที (กับศูนย์นำ) 19
L 3 มิลลิวินาที (กับศูนย์นำ) 047
ยังไม่มีข้อความ 9 NS (กับศูนย์นำ) 047000000
P ทุนในช่วงบ่ายของธง PM
P ในช่วงบ่ายของโลโก้ตัวพิมพ์เล็ก PM
Z ชดเชยจาก GMT ใน RFC 822 ดิจิตอล -0800
Z โซนเวลา PST
s จำนวนวินาทีตั้งแต่ 1970/01/01 00:00:00 GMT 1078884319
Q ตั้งแต่ 1970/01/01 00:00:00 GMT เซ็นต์ที่ยอดเยี่ยม 1078884319047

มีวันที่มีประโยชน์อื่น ๆ และเวลาของการเรียนที่มี สำหรับรายละเอียดเพิ่มเติมที่คุณสามารถดูเอกสาร Java มาตรฐาน


แยกสตริงเพื่อเวลา

SimpleDateFormat ชั้นจะมีวิธีการอื่น ๆ โดยเฉพาะอย่างยิ่งแยก () ซึ่งพยายามที่จะทำตามรูปแบบการจัดเก็บ SimpleDateFormat วัตถุที่ได้รับการแยกสตริง ตัวอย่างเช่น:

import java.util.*;
import java.text.*;
  
public class DateDemo {

   public static void main(String args[]) {
      SimpleDateFormat ft = new SimpleDateFormat ("yyyy-MM-dd"); 

      String input = args.length == 0 ? "1818-11-11" : args[0]; 

      System.out.print(input + " Parses as "); 

      Date t; 

      try { 
          t = ft.parse(input); 
          System.out.println(t); 
      } catch (ParseException e) { 
          System.out.println("Unparseable using " + ft); 
      }
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

$ java DateDemo
1818-11-11 Parses as Wed Nov 11 00:00:00 GMT 1818
$ java DateDemo 2007-12-01
2007-12-01 Parses as Sat Dec 01 00:00:00 GMT 2007

Java เฉยๆ (นอนหลับ)

การนอนหลับ () ทำให้เธรดปัจจุบันเข้าสู่สถานะนิ่ง (บล็อคเธรดปัจจุบัน) เพื่อให้การใช้งาน CPU ที่มีวัตถุประสงค์คือเพื่อให้เธรดปัจจุบันเพียงอย่างเดียวครอบครองทรัพยากรของ CPU ได้ในกระบวนการที่จะปล่อยให้เวลาบางส่วนที่จะมีโอกาสด้ายของการดำเนินการอื่น

คุณสามารถให้โปรแกรมการนอนหลับหนึ่งมิลลิวินาทีระยะเวลานานหรือไปของชีวิตของคอมพิวเตอร์ของคุณ ตัวอย่างเช่นโปรแกรมต่อไปนี้จะนอนหลับสามวินาที:

import java.util.*;
  
public class SleepDemo {
   public static void main(String args[]) {
      try { 
         System.out.println(new Date( ) + "\n"); 
         Thread.sleep(1000*3);   // 休眠3秒
         System.out.println(new Date( ) + "\n"); 
      } catch (Exception e) { 
          System.out.println("Got an exception!"); 
      }
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Thu Sep 17 10:20:30 CST 2015

Thu Sep 17 10:20:33 CST 2015

การวัดระยะเวลา

นี่คือตัวอย่างที่แสดงให้เห็นวิธีการวัดช่วงเวลา (มิลลิวินาที) ต่อไปนี้:

import java.util.*;
  
public class DiffDemo {

   public static void main(String args[]) {
      try {
         long start = System.currentTimeMillis( );
         System.out.println(new Date( ) + "\n");
         Thread.sleep(5*60*10);
         System.out.println(new Date( ) + "\n");
         long end = System.currentTimeMillis( );
         long diff = end - start;
         System.out.println("Difference is : " + diff);
      } catch (Exception e) {
         System.out.println("Got an exception!");
      }
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Fri Jan 08 09:48:47 CST 2016

Fri Jan 08 09:48:50 CST 2016

Difference is : 3019

ปฏิทินระดับ

ขณะนี้เราสามารถจัดรูปแบบและการสร้างวัตถุวัน แต่วิธีการที่เราสามารถตั้งค่าและเรียกเฉพาะส่วนของมันวันที่ข้อมูลเช่นชั่วโมงวันหรือนาที? วิธีที่เราสามารถในส่วนนี้ของวันบวกหรือลบ ? คำตอบคือการใช้หมวดหมู่ปฏิทิน

คุณลักษณะที่มีประสิทธิภาพมากมายกว่าระดับชั้นปฏิทินวัน แต่ยังอยู่ในการดำเนินการที่ซับซ้อนกว่าระดับวัน

ระดับปฏิทินเป็นระดับนามธรรมที่ใช้เฉพาะชั้นย่อยของวัตถุในการใช้งานจริงการสร้างวัตถุมีความโปร่งใสในการเขียนโปรแกรมเพียงต้องการที่จะสร้างขึ้นเพื่อใช้วิธี getInstance

สร้างวัตถุปฏิทินจะแสดงวันระบบปัจจุบัน

Calendar c = Calendar.getInstance();//默认是当前日期

สร้างวันที่ปฏิทินวัตถุที่ระบุ

ใช้คลาสปฏิทินหมายโดยเฉพาะเวลาที่คุณต้องแรกสร้างวัตถุปฏิทินแล้วชุดพารามิเตอร์วันที่วัตถุที่จะเสร็จสมบูรณ์

//创建一个代表2009年6月12日的Calendar对象
Calendar c1 = Calendar.getInstance();
c1.set(2009, 6 - 1, 12);

ปฏิทินชนิดชั้นข้อมูลวัตถุ

ประเภทปฏิทินที่ใช้ค่าคงที่เหล่านี้เป็นตัวแทนความหมายที่แตกต่างกันหลายคนคิดว่าชั้นนี้จะถูกนำมาใช้จริงภายใน JDK

คงที่ ลักษณะ
Calendar.YEAR ปีที่ผ่านมา
Calendar.MONTH เดือน
Calendar.DATE วันที่
Calendar.DAY_OF_MONTH วันที่และเหมือนกันกับสาขาดังกล่าวข้างต้นอย่างมีนัยสำคัญ
Calendar.HOUR ชั่วโมง 12 ชั่วโมง
Calendar.HOUR_OF_DAY ชั่วโมงตลอด 24 ชั่วโมง
Calendar.MINUTE นาที
Calendar.SECOND ที่สอง
Calendar.DAY_OF_WEEK วันของสัปดาห์

ข้อมูลการตั้งค่าวัตถุชั้นปฏิทิน

การตั้งค่าชุด

เช่น:

Calendar c1 = Calendar.getInstance();

โทร:

public final void set(int year,int month,int date)
c1.set(2009, 6 - 1, 12);//把Calendar对象c1的年月日分别设这为:2009、6、12

ใช้การตั้งค่าชนิดของฟิลด์

ถ้าเพียง แต่ตั้งค่าเขตข้อมูลเช่นวันที่คุ้มค่าสามารถตั้งค่าการใช้วิธีการต่อไปนี้:

public void set(int field,int value)

วัตถุที่แสดงถึงวันที่ C1 ถูกตั้งไว้ที่ 10 ค่าอื่น ๆ ทั้งหมดจะถูกคำนวณใหม่

c1.set(Calendar.DATE,10);

วัตถุที่แสดงถึง C1 ปีถูกตั้งค่าให้ปี 2008 ค่าอื่น ๆ ทั้งหมดจะถูกคำนวณใหม่

c1.set(Calendar.YEAR,2008);

ความหมายของคุณสมบัติสาขาอื่นที่กำหนดให้

เพิ่มการตั้งค่า

Calendar c1 = Calendar.getInstance();

วันที่เป้าหมายบวก 10 C1, C1 ยังจะแสดงเป็น 10 วันหลังจากวันที่ค่าอื่น ๆ ทั้งหมดจะถูกคำนวณใหม่

c1.add(Calendar.DATE, 10);

วันที่เป้าหมายลบ 10 C1, C1 ยังจะแสดงเป็นวันที่ 10 วันที่ผ่านมาค่าอื่น ๆ ทั้งหมดจะได้รับการคำนวณใหม่

<pre>c1.add(Calendar.DATE, -10);

เพิ่มความหมายคุณสมบัติอื่น ๆ เพื่อให้ข้อมูล

วัตถุชั้นปฏิทินจะได้รับข้อมูล

Calendar c1 = Calendar.getInstance();
// 获得年份
int year = c1.get(Calendar.YEAR);
// 获得月份
int month = c1.get(Calendar.MONTH) + 1;
// 获得日期
int date = c1.get(Calendar.DATE);
// 获得小时
int hour = c1.get(Calendar.HOUR_OF_DAY);
// 获得分钟
int minute = c1.get(Calendar.MINUTE);
// 获得秒
int second = c1.get(Calendar.SECOND);
// 获得星期几(注意(这个与Date类是不同的):1代表星期日、2代表星期1、3代表星期二,以此类推)
int day = c1.get(Calendar.DAY_OF_WEEK);

GregorianCalendar ชั้น

ระดับปฏิทินดำเนินปฏิทินเกรกอเรียนชั้น GregorianCalendar ปฏิทินการดำเนินงานที่เป็นรูปธรรม

ปฏิทิน getInstance () วิธีการส่งกลับเริ่มต้นกับสถานที่และเขตเวลาปัจจุบันเริ่มต้น GregorianCalendar วัตถุ GregorianCalendar กำหนดสองสาขา: AD และ BC เหล่านี้เป็นตัวแทนสองปฏิทินที่กำหนดไว้ในยุคนั้น

ข้างล่างนี้เป็นตัวสร้างวัตถุ GregorianCalendar ไม่กี่:

เลขที่ คอนสตรัคและคำอธิบาย
1 GregorianCalendar ()
เมื่อคุณมีโซนเวลาเริ่มต้นสถานที่เริ่มต้นโครงสร้างเริ่มต้น GregorianCalendar ปัจจุบัน
2 GregorianCalendar (ปี int, int เดือน วัน int)
เมื่อคุณมีโซนเริ่มต้นเริ่มต้นที่เกิดเหตุโครงสร้าง GregorianCalendar กับชุดวันที่ได้รับ
3 GregorianCalendar (ปี int, int เดือน วัน int, int ชั่วโมง int นาที)
มีโซนเวลาเริ่มต้นสถานที่เริ่มต้นที่จะ GregorianCalendar โครงสร้างวันที่ที่กำหนดและการตั้งค่าเวลา
4 GregorianCalendar (ปี int, int เดือน, วันที่ int, int ชั่วโมง int นาที int สอง)
มีโซนเวลาเริ่มต้นสถานที่เริ่มต้นที่จะ GregorianCalendar โครงสร้างวันที่ที่กำหนดและการตั้งค่าเวลา
5 GregorianCalendar (สถาน aLocale)
เมื่อคุณมีการกำหนดพื้นที่ที่เกิดเหตุเริ่มต้นโครงสร้างเวลาปัจจุบัน GregorianCalendar ตาม
6 GregorianCalendar (โซนเขต)
ในเขตเวลาสถานที่เริ่มต้นรับสร้าง GregorianCalendar ขึ้นอยู่กับเวลาปัจจุบัน
7 GregorianCalendar (โซนเขต Locale aLocale)
ในโซนที่กำหนดเวลาที่กำหนดสถานโครงสร้าง GregorianCalendar ขึ้นอยู่กับเวลาปัจจุบัน

นี่คือรายการ GregorianCalendar ชั้นให้การวิธีการที่มีประโยชน์บาง:

เลขที่ วิธีการและรายละเอียด
1 เพิ่มเป็นโมฆะ (เขต int จำนวน int )
เป็นไปตามหลักเกณฑ์ที่กำหนดไว้ในปฏิทิน (ลงนาม) ระยะเวลาไปยังเขตข้อมูลปฏิทินที่กำหนด
2 การป้องกัน computeFields โมฆะ ()
UTC MS แปลงค่าเกณฑ์เวลา
3 โมฆะป้องกัน computeTime ()
ครอบคลุมปฏิทิน, แปลงค่าเขตเวลาที่จะ UTC เป็นมิลลิวินาที
4 เท่ากับบูลีน (obj Object)
เปรียบเทียบ GregorianCalendar นี้เพื่อวัตถุที่ระบุ
5 int ได้รับ (เขต int)
ได้รับค่าเวลาของฟิลด์ที่ระบุ
6 int getActualMaximum (int Field)
ส่งกลับวันที่ปัจจุบันค่าสูงสุดของสนามที่กำหนด
7 int getActualMinimum (int Field)
ส่งกลับวันที่ปัจจุบันค่าต่ำสุดของสนามที่กำหนด
8 int getGreatestMinimum (int Field)
GregorianCalendar ส่งกลับค่าต่ำสุดสูงสุดสำหรับเขตข้อมูลปฏิทินที่กำหนด
9 วันที่ getGregorianChange ()
ได้รับวันเปลี่ยนแปลงเกรกอเรียน
10 int getLeastMaximum (int Field)
ผลตอบแทนเช่นนี้ GregorianCalendar ของปฏิทินฟิลด์ได้รับค่าสูงสุดต่ำสุด
11 int getMaximum (int Field)
ผลตอบแทนที่ได้รับเช่น GregorianCalendar ฟิลด์ปฏิทินสูงสุด
12 วันที่ getTime ()
รับเวลาที่ปฏิทินปัจจุบัน
13 getTimeInMillis ยาว ()
ได้รับปฏิทินที่มีการแสดงจำนวนเต็มยาวของเวลาปัจจุบัน
14 เขต getTimeZone ()
รับโซนเวลา
15 int getMinimum (int Field)
กลับไปที่ค่าต่ำสุดของสนามที่กำหนด
16 int hashCode ()
hashCode Rewrite
17 บูลีน isLeapYear (ปี int)
กำหนดว่าปีที่ได้รับเป็นปีอธิกสุรทิน
18 ม้วนเป็นโมฆะ (เขต int บูลีนขึ้น )
บนสนามเวลาที่กำหนดให้เพิ่มหรือลบหน่วยเดียวของเวลา (ขึ้น / ลง) โดยไม่ต้องเปลี่ยนสาขาที่มีขนาดใหญ่
19 เป็นโมฆะชุด (เขต int, int ค่า )
ด้วยฟิลด์ค่าเวลาที่กำหนด
20 ชุดโมฆะ (ปี int, int เดือน , วันที่ int)
ตั้งปีมูลค่าของเดือนและวัน
21 ชุดโมฆะ (ปี int, int เดือน , วันที่ int, int ชั่วโมง int นาที)
ตั้งปีเดือนวันชั่วโมงค่านาที
22 ชุดโมฆะ (ปี int, int เดือน , วันที่ int, int ชั่วโมง int นาที int สอง)
ตั้งปีชั่วโมงนาทีและค่าที่สองของเดือนวัน
23 เป็นโมฆะ setGregorianChange วันที่ (Date)
กำหนดวันการเปลี่ยนแปลง GregorianCalendar
24 เป็นโมฆะ setTime วันที่ (Date)
กับเวลาปัจจุบันที่กำหนด SET วันที่ปฏิทิน
25 setTimeInMillis โมฆะ (มิลลิวินาทียาว)
ด้วยจำนวนที่กำหนดของชนิดยาวมีการตั้งค่ามิลลิวินาทีเวลาปัจจุบันปฏิทิน
26 เป็นโมฆะ setTimeZone (ค่าปรบ)
ด้วยการตั้งค่าโซนเวลาในโซนเวลาปัจจุบัน
27 String toString ()
ส่งกลับสตริงที่แสดงปฏิทิน

ตัวอย่าง

import java.util.*;
  
public class GregorianCalendarDemo {

   public static void main(String args[]) {
      String months[] = {
      "Jan", "Feb", "Mar", "Apr",
      "May", "Jun", "Jul", "Aug",
      "Sep", "Oct", "Nov", "Dec"};
      
      int year;
      // 初始化 Gregorian 日历
      // 使用当前时间和日期
      // 默认为本地时间和时区
      GregorianCalendar gcalendar = new GregorianCalendar();
      // 显示当前时间和日期的信息
      System.out.print("Date: ");
      System.out.print(months[gcalendar.get(Calendar.MONTH)]);
      System.out.print(" " + gcalendar.get(Calendar.DATE) + " ");
      System.out.println(year = gcalendar.get(Calendar.YEAR));
      System.out.print("Time: ");
      System.out.print(gcalendar.get(Calendar.HOUR) + ":");
      System.out.print(gcalendar.get(Calendar.MINUTE) + ":");
      System.out.println(gcalendar.get(Calendar.SECOND));
      
      // 测试当前年份是否为闰年
      if(gcalendar.isLeapYear(year)) {
         System.out.println("当前年份是闰年");
      }
      else {
         System.out.println("当前年份不是闰年");
      }
   }
}

ตัวอย่างข้างต้นรวบรวมผลมีดังนี้

Date: Apr 22 2009
Time: 11:25:27
当前年份不是闰年