Apache Commons Lang – DateUtils(Iterator)


引き続き、DateUtilsクラスの説明です。

今回は、日付の範囲についてです。


iterator

public static java.util.Iterator iterator(java.util.Date focus, int rangeStyle)

指定された基準となる日付と範囲のスタイルから、日付の範囲のイテレータを生成します。

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_MONTH_SUNDAY) =
    ["2002/02/24(日)", "2002/02/25(月)", "2002/02/26(火)", …, "2002/04/04(木)", "2002/04/05(金)", "2002/04/06(土)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_MONTH_MONDAY) =
    ["2002/02/25(月)", "2002/02/26(火)", "2002/02/27(水)", …, "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_SUNDAY) =
    ["2002/03/24(日)", "2002/03/25(月)", "2002/03/26(火)", "2002/03/27(水)", "2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_MONDAY) =
    ["2002/03/25(月)", "2002/03/26(火)", "2002/03/27(水)", "2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_RELATIVE) =
    ["2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)", "2002/04/01(月)", "2002/04/02(火)", "2002/04/03(水)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_CENTER) =
    ["2002/03/25(月)", "2002/03/26(火)", "2002/03/27(水)", "2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)"]

DateUtils.iterator(null, DateUtils.RANGE_MONTH_SUNDAY) = IllegalArgumentException
DateUtils.iterator("2002/03/28(木)", -1)               = IllegalArgumentException


パラメータ:
focus – 基準となるDate型の日付
rangeStyle – 範囲のスタイル
以下の定数から選択します。
RANGE_MONTH_SUNDAY, RANGE_MONTH_MONDAY,
RANGE_WEEK_SUNDAY, RANGE_WEEK_MONDAY,
RANGE_WEEK_RELATIVE, RANGE_WEEK_CENTER
戻り値:
日付の範囲のイテレータ
例外:
java.lang.IllegalArgumentException – 基準となる日付にNULLが指定されている場合
java.lang.IllegalArgumentException – 範囲のスタイルが不正の場合


iterator

public static java.util.Iterator iterator(java.util.Calendar focus, int rangeStyle)

指定された基準となる日付と範囲のスタイルから、日付の範囲のイテレータを生成します。

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_MONTH_SUNDAY) =
    ["2002/02/24(日)", "2002/02/25(月)", "2002/02/26(火)", …, "2002/04/04(木)", "2002/04/05(金)", "2002/04/06(土)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_MONTH_MONDAY) =
    ["2002/02/25(月)", "2002/02/26(火)", "2002/02/27(水)", …, "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_SUNDAY) =
    ["2002/03/24(日)", "2002/03/25(月)", "2002/03/26(火)", "2002/03/27(水)", "2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_MONDAY) =
    ["2002/03/25(月)", "2002/03/26(火)", "2002/03/27(水)", "2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_RELATIVE) =
    ["2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)", "2002/04/01(月)", "2002/04/02(火)", "2002/04/03(水)"]

DateUtils.iterator("2002/03/28(木)", DateUtils.RANGE_WEEK_CENTER) =
    ["2002/03/25(月)", "2002/03/26(火)", "2002/03/27(水)", "2002/03/28(木)", "2002/03/29(金)", "2002/03/30(土)", "2002/03/31(日)"]

DateUtils.iterator(null, DateUtils.RANGE_MONTH_SUNDAY) = IllegalArgumentException
DateUtils.iterator("2002/03/28(木)", -1)               = IllegalArgumentException


パラメータ:
focus – 基準となるCalendar型の日付
rangeStyle – 範囲のスタイル
以下の定数から選択します。
RANGE_MONTH_SUNDAY, RANGE_MONTH_MONDAY,
RANGE_WEEK_SUNDAY, RANGE_WEEK_MONDAY,
RANGE_WEEK_RELATIVE, RANGE_WEEK_CENTER
戻り値:
日付の範囲のイテレータ
例外:
java.lang.IllegalArgumentException – 基準となる日付にNULLが指定されている場合
java.lang.IllegalArgumentException – 範囲のスタイルが不正の場合


RANGE_MONTH_SUNDAY

public static final int RANGE_MONTH_SUNDAY

基準日の前月の最終週の日曜日~基準日の翌月の第1週の土曜日までの範囲


RANGE_MONTH_MONDAY

public static final int RANGE_MONTH_MONDAY

基準日の前月の最終週の月曜日~基準日の翌月の第1週の日曜日までの範囲


RANGE_WEEK_SUNDAY

public static final int RANGE_WEEK_SUNDAY

基準日の直前の日曜日から1週間


RANGE_WEEK_MONDAY

public static final int RANGE_WEEK_MONDAY

基準日の直前の月曜日から1週間


RANGE_WEEK_RELATIVE

public static final int RANGE_WEEK_RELATIVE

基準日から1週間


RANGE_WEEK_CENTER

public static final int RANGE_WEEK_CENTER

基準日を中心とした1週間(基準日の前後3日)

関連記事

  1. コメント 0

  1. トラックバック 0

return top