แพ็คเกจ java.util จัดเตรียมคลาส Date เพื่อสรุปวันที่และเวลาปัจจุบัน คลาส Date จัดเตรียมคอนสตรัคเตอร์สองตัวเพื่อสร้างอินสแตนซ์อ็อบเจ็กต์ Date
ตัวสร้างตัวแรกเริ่มต้นวัตถุด้วยวันที่และเวลาปัจจุบัน
วันที่( )
ตัวสร้างตัวที่สองได้รับพารามิเตอร์ ซึ่งเป็นจำนวนมิลลิวินาทีตั้งแต่วันที่ 1 มกราคม 1970
วันที่(มิลลิวินาทีแบบยาว)
หลังจากสร้างวัตถุ Date แล้ว คุณสามารถเรียกใช้วิธีการต่อไปนี้ได้
หมายเลขซีเรียล | วิธีการและคำอธิบาย |
---|---|
1 | บูลีนหลังจาก (วันที่วันที่) คืนค่าจริงหากวัตถุ Date ที่เรียกใช้เมธอดนี้อยู่หลังวันที่ที่ระบุ มิฉะนั้นจะส่งคืนค่าเท็จ |
2 | บูลีนก่อน (วันที่วันที่) คืนค่าจริงหากวัตถุ Date ที่เรียกใช้เมธอดนี้อยู่ก่อนวันที่ที่ระบุ มิฉะนั้นจะส่งคืนค่าเท็จ |
3 | Object clone( ) ส่งคืนสำเนาของวัตถุนี้ |
4 | int comparisonTo(Date date) เปรียบเทียบวัตถุ Date เมื่อเรียกใช้เมธอดนี้กับวันที่ที่ระบุ เมื่อทั้งสองเท่ากัน จะส่งกลับ 0 หากออบเจ็กต์การเรียกอยู่ก่อนวันที่ที่ระบุ ระบบจะส่งกลับจำนวนลบ วัตถุที่เรียกส่งกลับจำนวนบวกหลังจากวันที่ที่ระบุ |
5 | int comparisonTo(Object obj) ถ้า obj เป็นประเภท Date การดำเนินการจะเทียบเท่ากับ comparisonTo(Date) มิฉะนั้นจะส่ง ClassCastException |
6 | บูลีนเท่ากับ (วันที่ของวัตถุ) คืนค่าจริงเมื่อวัตถุ Date ที่เรียกใช้เมธอดนี้เท่ากับวันที่ที่ระบุ มิฉะนั้นจะส่งคืนค่าเท็จ |
7 | long getTime( ) ส่งคืนจำนวนมิลลิวินาทีที่แสดงโดยวัตถุ Date นี้ตั้งแต่วันที่ 1 มกราคม 1970 00:00:00 GMT |
8 | int hashCode() ส่งกลับค่ารหัสแฮชของวัตถุนี้ |
9 | void setTime(long time) ตั้งเวลาและวันที่โดยใช้จำนวนมิลลิวินาทีตั้งแต่วันที่ 1 มกราคม 1970 00:00:00 GMT |
10 | String toString() แปลงวัตถุ Date ให้เป็นตัวแทน String และส่งกลับสตริง |
การรับวันที่และเวลาปัจจุบันใน Java นั้นง่ายมาก ใช้เมธอด toString() ของอ็อบเจ็กต์ Date เพื่อพิมพ์วันที่และเวลาปัจจุบัน ดังที่แสดงด้านล่าง:
นำเข้า java.util.Date;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงสาธารณะ main (String args []) {
// เริ่มต้นวัตถุวันที่ Date date = new Date();
//ใช้ฟังก์ชัน toString() เพื่อแสดงวันที่และเวลา System.out.println(date.toString());
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
จันทร์ที่ 04 พฤษภาคม 09:51:52 CDT 2013
Java ใช้สามวิธีต่อไปนี้เพื่อเปรียบเทียบสองวัน:
ใช้เมธอด getTime() เพื่อรับวันที่สองวัน (จำนวนมิลลิวินาทีตั้งแต่วันที่ 1 มกราคม 1970) จากนั้นจึงเปรียบเทียบค่าทั้งสอง
ใช้วิธีการ before(), after() และเท่ากับ() ตัวอย่างเช่น ถ้าวันที่ 12 ของเดือนอยู่ก่อนวันที่ 18 ดังนั้น new Date(99, 2, 12).before(new Date (99, 2, 18)) จะส่งกลับค่า true
ใช้เมธอด CompareTo() ซึ่งกำหนดโดยอินเทอร์เฟซที่เปรียบเทียบได้ และคลาส Date จะใช้อินเทอร์เฟซนี้
SimpleDateFormat เป็นคลาสสำหรับการจัดรูปแบบและแยกวิเคราะห์วันที่ในลักษณะที่คำนึงถึงสถานที่ SimpleDateFormat ช่วยให้คุณสามารถเลือกรูปแบบวันที่และเวลาที่ผู้ใช้กำหนดเพื่อดำเนินการได้ ตัวอย่างเช่น:
นำเข้า java.util.*;
นำเข้า java.text.*;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงสาธารณะ main (String args []) {
วันที่ dNow = วันที่ใหม่ ( );
SimpleDateFormat ฟุต =
SimpleDateFormat ใหม่ ("E yyyy.MM.dd 'at' hh:mm:ss a zzz");
System.out.println("วันที่ปัจจุบัน: " + ft.format(dNow));
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
วันที่ปัจจุบัน: อาทิตย์ 18.07.2004 เวลา 16:14:09 น. PDT
สตริงรูปแบบเวลาใช้เพื่อระบุรูปแบบเวลา ในโหมดนี้ ตัวอักษร ASCII ทั้งหมดจะถูกสงวนไว้เป็นตัวอักษรรูปแบบ โดยมีการกำหนดดังนี้:
จดหมาย | อธิบาย | ตัวอย่าง |
---|---|---|
ช | เครื่องหมายยุค | ค.ศ |
ย | ปีสี่หลัก | 2544 |
ม | เดือน | กรกฎาคม หรือ 07 |
ง | วันที่ของเดือน | 10 |
ชม. | ชั่วโมงรูปแบบ AM/PM (1~12) | 12 |
ชม | ชั่วโมงของวัน (0~23) | ยี่สิบสอง |
ม | นาที | 30 |
ส | วินาที | 55 |
ส | มิลลิวินาที | 234 |
อี | วันในสัปดาห์ | วันอังคาร |
ดี | วันของปี | 360 |
เอฟ | วันในสัปดาห์ของเดือน | 2 (พุธที่สองของเดือนกรกฎาคม) |
ว | สัปดาห์ของปี | 40 |
ว | สัปดาห์ของเดือน | 1 |
ก | เครื่องหมาย AM/PM | น |
เค | ชั่วโมงของวัน (1~24) | ยี่สิบสี่ |
เค | AM/PM (0~11) รูปแบบชั่วโมง | 10 |
z | โซนเวลา | เวลามาตรฐานตะวันออก |
- | ตัวคั่นข้อความ | ตัวคั่น |
- | คำพูดเดียว | - |
วิธีการ printf ช่วยให้จัดรูปแบบเวลาและวันที่ได้ง่าย ใช้รูปแบบตัวอักษรสองตัว ซึ่งขึ้นต้นด้วย t และลงท้ายด้วยตัวอักษรจากตารางด้านล่าง ตัวอย่างเช่น:
นำเข้า java.util.Date;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงสาธารณะ main (String args []) {
// เริ่มต้นวัตถุวันที่ Date date = new Date();
// ใช้ toString() เพื่อแสดงวันที่และเวลา String str = String.format("Current Date/Time : %tc", date );
System.out.printf(str);
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
วันที่/เวลาปัจจุบัน: วันเสาร์ที่ 15 ธันวาคม เวลา 16:37:57 น. MST 2012
หากคุณต้องการระบุวันที่ซ้ำๆ การจัดรูปแบบแต่ละส่วนในลักษณะนี้จะซับซ้อนเล็กน้อย ดังนั้น สตริงรูปแบบสามารถใช้เพื่อระบุดัชนีของพารามิเตอร์ที่จะจัดรูปแบบได้
ดัชนีจะต้องตาม % ทันทีและต้องลงท้ายด้วย $ ตัวอย่างเช่น:
นำเข้า java.util.Date;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงสาธารณะ main (String args []) {
// เริ่มต้นวัตถุวันที่ Date date = new Date();
// ใช้ toString() เพื่อแสดงวันที่และเวลา System.out.printf("%1$s %2$tB %2$td, %2$tY",
"วันครบกำหนด:", วันที่);
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
วันที่ครบกำหนด: 09 กุมภาพันธ์ 2547
หรือคุณสามารถใช้แฟล็ก < บ่งชี้ว่าพารามิเตอร์ที่จัดรูปแบบไว้ก่อนหน้านี้จะถูกนำมาใช้อีกครั้ง ตัวอย่างเช่น:
นำเข้า java.util.Date;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงที่สาธารณะ main (String args []) {
// เริ่มต้นวัตถุวันที่ Date date = new Date();
// แสดงเวลาการจัดรูปแบบ System.out.printf("%s %tB %<te, %<tY",
"วันครบกำหนด:", วันที่);
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
วันที่ครบกำหนด: 09 กุมภาพันธ์ 2547
อักขระ | อธิบาย | ตัวอย่าง |
ค | กรอกวันและเวลาให้ครบถ้วน | จันทร์ที่ 04 พฤษภาคม 09:51:52 CDT 2552 |
เอฟ | วันที่จัดรูปแบบ ISO 8601 | 2004-02-09 |
ดี | วันที่ในรูปแบบสหรัฐอเมริกา (เดือน/วัน/ปี) | 02/09/2004 |
ต | 24 ชม | 18:05:19 |
ร | 12 ชม | 18:05:19 น |
ร | เวลาแบบ 24 ชั่วโมง ไม่รวมวินาที | 18:05 |
ย | ปีที่เป็นตัวเลข 4 หลัก (รวม 0 นำหน้าด้วย) | 2547 |
ย | ตัวเลข 2 หลักสุดท้ายของปี (รวม 0 นำหน้าด้วย) | 04 |
ค | เลข 2 หลักแรกของปี (รวม 0 นำหน้าด้วย) | 20 |
บี | ชื่อเต็มของเดือน | กุมภาพันธ์ |
ข | ตัวย่อเดือน | ก.พ |
n | เดือนแบบ 2 หลัก (รวม 0 นำหน้าด้วย) | 02 |
ง | วันที่ 2 หลัก (รวม 0 นำหน้าด้วย) | 03 |
จ | วันที่ 2 หลัก (ไม่รวม 0 นำหน้า) | 9 |
ก | ชื่อเต็มของสัปดาห์ | วันจันทร์ |
ก | ตัวย่อสัปดาห์ | จันทร์ |
เจ | ปีที่เป็นตัวเลข 3 หลัก (รวม 0 นำหน้าด้วย) | 069 |
ชม | ชั่วโมง 2 หลัก (รวม 0 นำหน้าด้วย) 00 ถึง 23 | 18 |
เค | ชั่วโมง 2 หลัก (ไม่รวม 0 นำหน้า) 0 ถึง 23 | 18 |
ฉัน | ชั่วโมง 2 หลัก (รวม 0 นำหน้าด้วย) 01 ถึง 12 | 06 |
ล | ชั่วโมง 2 หลัก (ไม่รวม 0 นำหน้า) 1 ถึง 12 | 6 |
ม | นาที 2 หลัก (รวม 0 นำหน้าด้วย) | 05 |
ส | วินาที 2 หลัก (รวมศูนย์นำหน้า) | 19 |
ล | 3 หลักมิลลิวินาที (รวม 0 นำหน้า) | 047 |
เอ็น | นาโนวินาที 9 บิต (รวมถึง 0 นำหน้า) | 047000000 |
ป | ป้ายช่วงบ่ายตัวพิมพ์ใหญ่ | น |
พี | ป้ายยามบ่ายตัวพิมพ์เล็กตัวพิมพ์ใหญ่ | น |
z | ออฟเซ็ตดิจิตอล RFC 822 จาก GMT | -0800 |
ซี | โซนเวลา | PST |
ส | จำนวนวินาทีตั้งแต่ 1970-01-01 00:00:00 GMT | 1078884319 |
ถาม | ตั้งแต่ 1970-01-01 00:00:00 GMT | 1078884319047 |
มีคลาสที่เกี่ยวข้องกับวันที่และเวลาที่มีประโยชน์อื่น ๆ สำหรับรายละเอียดเพิ่มเติม โปรดดูที่เอกสารประกอบมาตรฐาน Java
คลาส SimpleDateFormat มีวิธีการเพิ่มเติมบางอย่าง โดยเฉพาะอย่างยิ่ง parse() ซึ่งพยายามแยกวิเคราะห์สตริงตามหน่วยเก็บข้อมูลที่จัดรูปแบบของออบเจ็กต์ SimpleDateFormat ที่กำหนด ตัวอย่างเช่น:
นำเข้า java.util.*;
นำเข้า java.text.*;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงที่สาธารณะ main (String args []) {
SimpleDateFormat ft = SimpleDateFormat ใหม่ ("yyyy-MM-dd");
อินพุตสตริง = args.length == 0 ? "1818-11-11" : args[0];
System.out.print(input + " แยกวิเคราะห์เป็น ");
วันที่ ต;
พยายาม {
t = ft.parse (อินพุต);
System.out.println(t);
} จับ (ParseException e) {
System.out.println("ไม่สามารถแยกวิเคราะห์ได้โดยใช้ " + ft);
-
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
$javaDateDemo
1818-11-11 แยกวิเคราะห์เป็น วันพุธที่ 11 พฤศจิกายน 00:00:00 GMT 1818
$ java DateDemo 2007-12-01
01-12-2550 แยกวิเคราะห์เป็นวันเสาร์ที่ 1 ธันวาคม 00:00:00 GMT 2550
Java สลีป (สลีป)
คุณสามารถกำหนดให้โปรแกรมเข้าสู่โหมดสลีปเป็นเวลาหนึ่งมิลลิวินาทีหรือตราบเท่าที่คอมพิวเตอร์ของคุณใช้งานได้ ตัวอย่างเช่น โปรแกรมต่อไปนี้จะพักเป็นเวลา 3 วินาที:
นำเข้า java.util.*;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงสาธารณะ main (String args []) {
พยายาม {
System.out.println(วันที่ใหม่( ) + "n");
ด้าย.สลีป(5*60*10);
System.out.println(วันที่ใหม่( ) + "n");
} จับ (ข้อยกเว้นจ) {
System.out.println("ได้รับข้อยกเว้น!");
-
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
วันอาทิตย์ที่ 3 พฤษภาคม 18:04:41 GMT 2552
วันอาทิตย์ที่ 3 พฤษภาคม 18:04:44 GMT 2552
ตัวอย่างด้านล่างแสดงวิธีการวัดช่วงเวลาเป็นมิลลิวินาที:
นำเข้า java.util.*;
ชั้นเรียนสาธารณะหลัก{
โมฆะคงที่สาธารณะ main (String args []) {
พยายาม {
เริ่มต้นนาน = System.currentTimeMillis( );
System.out.println(วันที่ใหม่( ) + "n");
ด้าย.สลีป(5*60*10);
System.out.println(วันที่ใหม่( ) + "n");
ปลายยาว = System.currentTimeMillis( );
long diff = สิ้นสุด - เริ่มต้น;
System.out.println("ความแตกต่างคือ : " + diff);
} จับ (ข้อยกเว้นจ) {
System.out.println("ได้รับข้อยกเว้น!");
-
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
วันอาทิตย์ที่ 3 พฤษภาคม 18:16:51 GMT 2552
วันอาทิตย์ที่ 3 พฤษภาคม 18:16:54 GMT 2552
ความแตกต่างคือ: 3050
ขณะนี้เราสามารถจัดรูปแบบและสร้างวัตถุวันที่ได้ แต่เราจะตั้งค่าและรับข้อมูลวันที่เฉพาะบางส่วน เช่น ชั่วโมง วัน หรือนาที ได้อย่างไร และเราจะเพิ่มหรือลบค่าจากส่วนเหล่านี้ของวันที่ได้อย่างไร อะไรล่ะ คำตอบคือการใช้คลาสปฏิทิน
คลาส Calendar มีประสิทธิภาพมากกว่าคลาส Date มากและการใช้งานก็ซับซ้อนกว่าคลาส Date เช่นกัน
คลาส Calendar เป็นคลาสนามธรรมที่ใช้อ็อบเจ็กต์ของคลาสย่อยเฉพาะในการใช้งานจริง กระบวนการสร้างอ็อบเจ็กต์มีความโปร่งใสสำหรับโปรแกรมเมอร์ และจำเป็นต้องสร้างโดยใช้เมธอด getInstance เท่านั้น
ปฏิทิน c = Calendar.getInstance();//ค่าเริ่มต้นคือวันที่ปัจจุบัน
หากต้องการใช้คลาสปฏิทินเพื่อแสดงเวลาที่กำหนด คุณต้องสร้างออบเจ็กต์ปฏิทินก่อน จากนั้นจึงตั้งค่าพารามิเตอร์ปี เดือน และวันในออบเจ็กต์ให้เสร็จสมบูรณ์
//สร้างวัตถุปฏิทินที่แสดงถึงวันที่ 12 มิถุนายน 2552 ปฏิทิน c1 = Calendar.getInstance();
c1.set(2552, 6 - 1, 12);
ค่าคงที่เหล่านี้ใช้ในคลาส Calendar เพื่อแสดงความหมายที่แตกต่างกัน คลาสจำนวนมากใน jdk นำแนวคิดนี้ไปใช้จริง
คงที่ | อธิบาย |
---|---|
ปฏิทินปี | ปี |
ปฏิทิน.MONTH | เดือน |
ปฏิทิน.DATE | วันที่ |
ปฏิทินDAY_OF_MONTH | วันที่มีความหมายเหมือนกับช่องด้านบนทุกประการ |
ปฏิทินชั่วโมง | ชั่วโมงในนาฬิกาแบบ 12 ชั่วโมง |
ปฏิทินHOUR_OF_DAY | ชั่วโมงในนาฬิกาแบบ 24 ชั่วโมง |
ปฏิทินMINUTE | นาที |
ปฏิทินวินาที | ที่สอง |
ปฏิทินDAY_OF_WEEK | วันในสัปดาห์ |
ตั้งค่า
ชอบ:
ปฏิทิน c1 = Calendar.getInstance();
เรียก:
ชุดโมฆะสาธารณะขั้นสุดท้าย (ปี int, เดือน int, วันที่ int)
c1.set(2009, 6 - 1, 12);//กำหนดปี เดือน และวันของ Calendar object c1 เป็น: 2009, 5, 12
ใช้การตั้งค่าประเภทฟิลด์
หากคุณตั้งค่าเฉพาะฟิลด์บางฟิลด์ เช่น วันที่ คุณสามารถใช้วิธี set ต่อไปนี้:
ชุดโมฆะสาธารณะ (ฟิลด์ int, ค่า int)
ตั้งค่าวันที่ที่แสดงโดยวัตถุ c1 เป็นวันที่ 10 และค่าอื่นๆ ทั้งหมดจะถูกคำนวณใหม่
c1.set(ปฏิทิน.วันที่,10);
ตั้งค่าปีที่แสดงโดยวัตถุ c1 เป็น 2008 และค่าอื่นๆ ทั้งหมดจะถูกคำนวณใหม่
c1.set(ปฏิทินปี2551);
ความหมายของชุดคุณลักษณะของฟิลด์อื่นๆ สามารถอนุมานได้โดยการเปรียบเทียบ
เพิ่มการตั้งค่า
ปฏิทิน c1 = Calendar.getInstance();
เพิ่ม 10 เข้ากับวันที่ของวัตถุ c1 ซึ่งเป็นวันที่ 10 วันหลังจากวันที่แสดงด้วย c1 ค่าอื่นๆ ทั้งหมดจะถูกคำนวณใหม่
c1.add(ปฏิทิน.วันที่, 10);
ลบ 10 จากวันที่ของวัตถุ c1 ซึ่งเป็นวันที่ 10 วันก่อนวันที่แสดงด้วย c1 ค่าอื่นๆ ทั้งหมดจะถูกคำนวณใหม่
c1.add(ปฏิทิน.วันที่, -10);
ความหมายของการเพิ่มสำหรับแอตทริบิวต์ของฟิลด์อื่นๆ สามารถอนุมานได้โดยการเปรียบเทียบ
ปฏิทิน 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 minutes = c1.get(Calendar.MINUTE);
// รับวินาทีที่สอง int = c1.get(Calendar.SECOND);
// รับวันในสัปดาห์ (หมายเหตุ (ซึ่งแตกต่างจากคลาส Date): 1 หมายถึงวันอาทิตย์, 2 หมายถึงสัปดาห์ที่ 1, 3 หมายถึงวันอังคาร และอื่นๆ)
int วัน = c1.get(ปฏิทิน.DAY_OF_WEEK);
คลาสปฏิทินใช้ปฏิทินเกรกอเรียน และ GregorianCalendar เป็นการใช้งานเฉพาะของคลาสปฏิทิน
เมธอด getInstance() ของปฏิทินส่งคืนวัตถุ GregorianCalendar ที่เริ่มต้นโดยค่าเริ่มต้นด้วยสถานที่และเขตเวลาปัจจุบัน GregorianCalendar กำหนดสองฟิลด์: AD และ BC สิ่งเหล่านี้แสดงถึงสองยุคที่กำหนดโดยปฏิทินเกรโกเรียน
รายการด้านล่างนี้เป็นตัวสร้างหลายตัวของวัตถุ GregorianCalendar:
หมายเลขซีเรียล | ตัวสร้างและคำอธิบาย |
1 | GregorianCalendar() สร้าง GregorianCalendar เริ่มต้นโดยใช้เวลาปัจจุบันในเขตเวลาเริ่มต้นพร้อมกับสถานที่เริ่มต้น |
2 | GregorianCalendar (ปี int, เดือน int, วันที่ int) สร้าง GregorianCalendar พร้อมการตั้งค่าวันที่ที่กำหนดในเขตเวลาเริ่มต้นพร้อมสถานที่เริ่มต้น |
3 | GregorianCalendar(int ปี, int เดือน, int date, int ชั่วโมง, int นาที) สร้าง GregorianCalendar พร้อมการตั้งค่าวันที่และเวลาที่กำหนดสำหรับโซนเวลาเริ่มต้นด้วยสถานที่เริ่มต้น |
4 | GregorianCalendar(int ปี, int เดือน, int วันที่, int ชั่วโมง, int นาที, int วินาที) สร้าง GregorianCalendar พร้อมการตั้งค่าวันที่และเวลาที่กำหนดสำหรับโซนเวลาเริ่มต้นด้วยสถานที่เริ่มต้น |
5 | GregorianCalendar(Locale aLocale) สร้าง GregorianCalendar ตามเวลาปัจจุบันในเขตเวลาเริ่มต้นพร้อมกับสถานที่ที่กำหนด |
6 | GregorianCalendar (โซนเวลา) สร้าง GregorianCalendar ตามเวลาปัจจุบันในเขตเวลาที่กำหนดด้วยสถานที่เริ่มต้น |
7 | GregorianCalendar (โซนเวลา, Locale aLocale) สร้าง GregorianCalendar ตามเวลาปัจจุบันในเขตเวลาที่กำหนดพร้อมกับสถานที่ที่กำหนด |
นี่คือรายการวิธีการที่เป็นประโยชน์บางอย่างที่คลาส GregorianCalendar มีให้:
หมายเลขซีเรียล | วิธีการและคำแนะนำ |
1 | เพิ่มเป็นโมฆะ (ฟิลด์ int, จำนวน int) เพิ่มระยะเวลาที่ระบุ (ลงนาม) ลงในฟิลด์ปฏิทินที่กำหนดตามกฎของปฏิทิน |
2 | protected void computeFields() แปลงค่า UTC มิลลิวินาทีเป็นค่าโดเมนเวลา |
3 | protected void computeTime() จะแทนที่ปฏิทินและแปลงค่าโดเมนเวลาเป็นมิลลิวินาที UTC |
4 | boolean เท่ากับ (Object obj) เปรียบเทียบ GregorianCalendar นี้กับ Object ที่ระบุ |
5 | int get(int field) รับค่าเวลาของฟิลด์ที่ระบุ |
6 | int getActualMaximum(int field) ส่งกลับวันที่ปัจจุบัน ซึ่งเป็นค่าสูงสุดของฟิลด์ที่กำหนด |
7 | int getActualMinimum(int field) ส่งคืนวันที่ปัจจุบัน ซึ่งเป็นค่าต่ำสุดของฟิลด์ที่กำหนด |
8 | int getGreatestMinimum(int field) ส่งกลับค่าต่ำสุดสูงสุดสำหรับฟิลด์ปฏิทินที่กำหนดในอินสแตนซ์ GregorianCalendar นี้ |
9 | Date getGregorianChange() รับวันที่เปลี่ยนแปลงของปฏิทินเกรกอเรียน |
10 | int getLeastMaximum(int field) ส่งคืนค่าสูงสุดต่ำสุดของฟิลด์ปฏิทินที่กำหนดสำหรับอินสแตนซ์ GregorianCalendar นี้ |
11 | int getMaximum(int field) ส่งคืนค่าสูงสุดของฟิลด์ปฏิทินที่กำหนดสำหรับอินสแตนซ์ GregorianCalendar นี้ |
12 | Date getTime() รับเวลาปัจจุบันของปฏิทิน |
13 | long getTimeInMillis() รับเวลาปัจจุบันของปฏิทินที่แสดงด้วยจำนวนเต็มยาว |
14 | TimeZone getTimeZone() รับเขตเวลา |
15 | int getMinimum(int field) ส่งคืนค่าต่ำสุดของฟิลด์ที่กำหนด |
16 | int hashCode() แทนที่ hashCode |
17 | boolean isLeapYear(int year) กำหนดว่าปีที่กำหนดเป็นปีอธิกสุรทินหรือไม่ |
18 | ถือเป็นโมฆะม้วน (ฟิลด์ int, บูลีนขึ้น) เพิ่มหรือลบ (ขึ้น / ลง) หน่วยเวลาเดียวจากฟิลด์เวลาที่กำหนด โดยไม่ต้องเปลี่ยนฟิลด์ที่ใหญ่กว่า |
19 | ชุดโมฆะ (ฟิลด์ int, ค่า int) ตั้งค่าฟิลด์เวลาด้วยค่าที่กำหนด |
20 | void set(int year, int month, int date) ตั้งค่าปี เดือน และวัน |
ยี่สิบเอ็ด | ชุดโมฆะ(int ปี, เดือน int, วันที่ int, int ชั่วโมง, int นาที) ตั้งค่าปี เดือน วัน ชั่วโมง และนาที |
ยี่สิบสอง | ชุดโมฆะ (int ปี, เดือน int, วันที่ int, ชั่วโมง int, นาที int, int วินาที) ตั้งค่าปี เดือน วัน ชั่วโมง นาที และวินาที |
ยี่สิบสาม | เป็นโมฆะ setGregorianChange (วันที่วันที่) กำหนดวันที่เปลี่ยนแปลงของ GregorianCalendar |
ยี่สิบสี่ | เป็นโมฆะ setTime(วันที่วันที่) ตั้งเวลาปัจจุบันของปฏิทินด้วยวันที่ที่กำหนด |
25 | ถือเป็นโมฆะ setTimeInMillis(มิลลิวินาทีแบบยาว) ตั้งเวลาปัจจุบันของปฏิทินด้วยค่ามิลลิวินาทีแบบยาวที่กำหนด |
26 | เป็นโมฆะ setTimeZone (ค่าโซนเวลา) ตั้งค่าโซนเวลาปัจจุบันด้วยค่าโซนเวลาที่กำหนด |
27 | String toString() ส่งคืนสตริงที่แสดงถึงปฏิทิน |
นำเข้า java.util.*;
GregorianCalendarDemo ระดับสาธารณะ {
โมฆะคงที่สาธารณะ main (String args []) {
สตริงเดือน[] = {
"ม.ค.", "ก.พ.", "มี.ค.", "เม.ย."
"พ.ค.", "มิ.ย.", "ก.ค.", "ส.ค."
"ก.ย.", "ต.ค.", "พ.ย.", "ธ.ค."};
ปีสากล;
// เริ่มต้นปฏิทินเกรกอเรียน // ใช้เวลาและวันที่ปัจจุบัน // ค่าเริ่มต้นเป็นเวลาท้องถิ่นและโซนเวลา GregorianCalendar gcalendar = ใหม่ GregorianCalendar();
// แสดงข้อมูลเวลาและวันที่ปัจจุบัน System.out.print("Date: ");
System.out.print(เดือน[gcalendar.get(Calendar.MONTH)]);
System.out.print(" " + gcalendar.get(Calendar.DATE) + " ");
System.out.println(ปี = gcalendar.get(Calendar.YEAR));
System.out.print("เวลา: ");
System.out.print(gcalendar.get(Calendar.HOUR) + ///);
System.out.print(gcalendar.get(Calendar.MINUTE) + ///);
System.out.println(gcalendar.get(ปฏิทิน.SECOND));
// ทดสอบว่าปีปัจจุบันเป็นปีอธิกสุรทิน if(gcalendar.isLeapYear(year)) {
System.out.println("ปีปัจจุบันเป็นปีอธิกสุรทิน");
-
อื่น {
System.out.println("ปีปัจจุบันไม่ใช่ปีอธิกสุรทิน");
-
-
-
ผลการรวบรวมและการทำงานของตัวอย่างข้างต้นมีดังนี้:
วันที่: 22 เมษายน 2552
เวลา: 11:25:27 น
ปีปัจจุบันไม่ใช่ปีอธิกสุรทิน
หากต้องการดูรายการคลาสปฏิทินทั้งหมด โปรดดูเอกสารประกอบ Java มาตรฐาน