Java Calender類の使用概要と使用例
普段はいくつかのサイトを見ていると、現在の時間が表示されます。例えば、xx年xx月xx日xx時xx分xx秒です。実際の開発過程では、日付と時間の計算にも関連します。Javaでは専門的な種類のCalendarを提供して、日付と時間を処理します。
次に、Calendar類の使用シーンと使い方について説明します。
1.Calendarのインスタンスを取得する
まず、Calendar類の定義を見ます。
今は2019年2月21日15時36分38秒です。
注意:月の下表は0から始まります。0~11はそれぞれ1~12月を表します。
3.設定時間
私たちは今時間を2019-02-21 23:59に設定したいと思います。
3.1(一括設定):
Thu Feb 21:59 CST 2019
4.時間計算
4.1秒を増やす
私達は3.1の基礎の上で1秒を増加して、それでは時間は2019-02-22 00:00であるべきです。
Fri Feb 22 00:00 CST 2019
4.2増加月
まず私達は時間を2019-01-31に設定して、それからまず1ヶ月を増加して、更に2ヶ月増加します。
Thu Jan 31 15:58:03 CST 2019
Thu Feb 28 15:58:03 CST 2019
Sun Appr 28 15:58:03 CST 2019
注意事項:所在の月にその日付がない場合、2月に31日がない場合、帰るのは所在月の最後の日(2月28日)です。
5.拡張:ある月の最初の日と最後の日を取得する
2019-02-01
2019-02-28
2019-03-01
2019-03-31
6.参照リンク
JavaにおけるCalendar類の常用方法 Java Calender類の使用概要 java時間類Date、Calendar及び用法
以上は小编が绍介したJava Calendar类の使用総括と使用例の详しい解统です。皆さんに助けてほしいです。もし何か疑问があれば、メッセージをください。小编はすぐに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。
次に、Calendar類の使用シーンと使い方について説明します。
1.Calendarのインスタンスを取得する
まず、Calendar類の定義を見ます。
public abstract class Calendar implements Serializable, Cloneable, Comparable<Calendar>
abstractと定義されているので、newによってCalendarクラスのインスタンスを作成することはできませんが、Calendarクラスは、種類の方法get Instance()を提供して、Calendarのインスタンスに戻ります。
public static Calendar getInstance()
{
return createCalendar(TimeZone.getDefault(), Locale.getDefault(Locale.Category.FORMAT));
}
したがって、Calendarのインスタンスを取得するコードは、以下の通りである。
Calendar calendar = Calendar.getInstance();
2.現在時間の取得
package com.zwwhnly.springbootdemo;
import java.util.Calendar;
public class CalendarDemo {
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
int year = calendar.get(Calendar.YEAR);
// 0 , 0~11 1~12 , +1
int month = calendar.get(Calendar.MONTH) + 1;
int day = calendar.get(Calendar.DAY_OF_MONTH);
int hour = calendar.get(Calendar.HOUR_OF_DAY); // 24
int minute = calendar.get(Calendar.MINUTE);
int second = calendar.get(Calendar.SECOND);
System.out.println(" :" + year + " " + month + " " + day + " " + hour + " " + minute + " " + second + " ");
}
}
実行結果:今は2019年2月21日15時36分38秒です。
注意:月の下表は0から始まります。0~11はそれぞれ1~12月を表します。
3.設定時間
私たちは今時間を2019-02-21 23:59に設定したいと思います。
3.1(一括設定):
Calendar calendar = Calendar.getInstance();
calendar.set(2019, Calendar.FEBRUARY, 21, 23, 59, 59);
System.out.println(calendar.getTime());
3.2(それぞれ設定):
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, 2019);
calendar.set(Calendar.MONTH, Calendar.FEBRUARY);
calendar.set(Calendar.DAY_OF_MONTH, 21);
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 59);
System.out.println(calendar.getTime());
3.1と3.2の運転結果は以下の通りです。Thu Feb 21:59 CST 2019
4.時間計算
4.1秒を増やす
私達は3.1の基礎の上で1秒を増加して、それでは時間は2019-02-22 00:00であるべきです。
public static void main(String[] args) {
Calendar calendar = Calendar.getInstance();
calendar.set(2019, Calendar.FEBRUARY, 21, 23, 59, 59);
calendar.add(Calendar.SECOND, 1);
System.out.println(calendar.getTime());
}
実行結果:Fri Feb 22 00:00 CST 2019
4.2増加月
まず私達は時間を2019-01-31に設定して、それからまず1ヶ月を増加して、更に2ヶ月増加します。
Calendar calendar = Calendar.getInstance();
calendar.set(2019, Calendar.JANUARY, 31);
System.out.println(calendar.getTime());
calendar.add(Calendar.MONTH, 1);
System.out.println(calendar.getTime());
calendar.add(Calendar.MONTH, 2);
System.out.println(calendar.getTime());
実行結果:Thu Jan 31 15:58:03 CST 2019
Thu Feb 28 15:58:03 CST 2019
Sun Appr 28 15:58:03 CST 2019
注意事項:所在の月にその日付がない場合、2月に31日がない場合、帰るのは所在月の最後の日(2月28日)です。
5.拡張:ある月の最初の日と最後の日を取得する
package com.zwwhnly.springbootdemo;
import java.text.SimpleDateFormat;
import java.util.Calendar;
public class CalendarDemo {
public static void main(String[] args) {
System.out.println(getFirstDayOfMonth(2019, 2));
System.out.println(getLastDayOfMonth(2019, 2));
System.out.println(getFirstDayOfMonth(2019, 3));
System.out.println(getLastDayOfMonth(2019, 3));
}
public static String getLastDayOfMonth(int year, int month) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month - 1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DATE));
return new SimpleDateFormat("yyyy-MM-dd").format(calendar.getTime());
}
public static String getFirstDayOfMonth(int year, int month) {
Calendar calendar = Calendar.getInstance();
calendar.set(Calendar.YEAR, year);
calendar.set(Calendar.MONTH, month - 1);
calendar.set(Calendar.DAY_OF_MONTH, calendar.getMinimum(Calendar.DATE));
return new SimpleDateFormat("yyyy-MM-dd").format(calendar.getTime());
}
}
実行結果:2019-02-01
2019-02-28
2019-03-01
2019-03-31
6.参照リンク
JavaにおけるCalendar類の常用方法 Java Calender類の使用概要 java時間類Date、Calendar及び用法
以上は小编が绍介したJava Calendar类の使用総括と使用例の详しい解统です。皆さんに助けてほしいです。もし何か疑问があれば、メッセージをください。小编はすぐに返事します。ここでも私たちのサイトを応援してくれてありがとうございます。