概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

## ts.util
クラス DateTimeRange

    java.lang.Object
      ts.util.Range<DateTime>
          ts.util.DateTimeRange

    public class DateTimeRange

extends Range<DateTime>

日時の範囲を表すクラス。
フィールド変数に二つの日時を持ち、その差を年単位や日単位で算出したり、 指定された日時が範囲内にあるかどうかを判定するためのメソッドを用意している。

バージョン:
  $Revision: 1.1.1.1 $, $Date: 2010-10-16 00:03:44 $
作成者:
  佐藤隆之.

コンストラクタの概要
`DateTimeRange(DateTime dttm1, DateTime dttm2)` 二つの日時オブジェクトを引数にとるコンストラクタ。

メソッドの概要
`int` | `countDays()` 日時の範囲に含まれる日の数を求める。
`long` | `countHours()` 日時の範囲に含まれる時の数を求める。
`long` | `countMinutes()` 日時の範囲に含まれる分の数を求める。
`int` | `countMonths()` 日時の範囲に含まれる月の数を求める。
`long` | `countSeconds()` 日時の範囲に含まれる秒の数を求める。
`int` | `countYears()` 日時の範囲に含まれる年の数を求める。
`boolean` | `encompass(DateTime dttm)` 指定された日時がこのオブジェクトの示す日時の範囲に含まれているかどうかを 判定する。
`boolean` | `encompass(DateTimeRange range)` 指定された日時の範囲がこのオブジェクトの示す日時の範囲に含まれているか どうかを判定する。
`DateTimeRange` | `expandsWith(DateTime dttm)` 指定された日時を含むように、このオブジェクトの示す範囲を拡張した範囲を取得 する。
`DateTimeRange` | `expandsWith(DateTimeRange range)` 指定された範囲を含むように、このオブジェクトの示す範囲を拡張した範囲を 取得する。
`DateTime` | `getEnd()` 終了日時を取得する。
`DateTime` | `getStart()` 開始日時を取得する。
`DateTimeRange` | `intersectsWith(DateTimeRange range)` 指定された日時の範囲とこのオブジェクトの示す日時の範囲の重なる範囲を 取得する。
`int` | `intervalInDay()` 二つの日時の差を日単位で求める。
`long` | `intervalInHour()` 二つの日時の差を時単位で求める。
`long` | `intervalInMinute()` 二つの日時の差を分単位で求める。
`int` | `intervalInMonth()` 二つの日時の差を月単位で求める。
`long` | `intervalInSecond()` 二つの日時の差を秒単位で求める。
`int` | `intervalInYear()` 二つの日時の差を年単位で求める。
`protected void` | `set(long millis1, long millis2, java.util.Calendar calendar)` 日時範囲の開始ミリ秒と終了ミリ秒、カレンダを設定する。
`void` | `setRange(DateTime dttm1, DateTime dttm2)` 二つの日時オブジェクトを設定する。

クラス ts.util.Range から継承されたメソッド
`encompass, equals, expandsWith, intersectsWith, toString`

クラス java.lang.Object から継承されたメソッド
`clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait`

コンストラクタの詳細

### DateTimeRange

    public DateTimeRange(DateTime dttm1,
                         DateTime dttm2)

  二つの日時オブジェクトを引数にとるコンストラクタ。
  引数の日時オブジェクトには、大小を関係なく指定することができる。

  パラメータ:
    `dttm1` - 日時1。
    `dttm2` - 日時2。
  例外:
    `java.lang.IllegalArgumentException` - 二つの日時オブジェクトのカレンダーが 異なる場合。
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ）。

メソッドの詳細

### setRange

    public final void setRange(DateTime dttm1,
                               DateTime dttm2)

  二つの日時オブジェクトを設定する。
  引数の日時オブジェクトには、大小を関係なく指定することができる。

  オーバーライド:
    クラス `Range<DateTime>` 内の `setRange`
  パラメータ:
    `dttm1` - 日時1。
    `dttm2` - 日時2。
  例外:
    `java.lang.IllegalArgumentException` - 二つの日時オブジェクトのカレンダーが 異なる場合。
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ)。

### set

    protected void set(long millis1,
                       long millis2,
                       java.util.Calendar calendar)

  日時範囲の開始ミリ秒と終了ミリ秒、カレンダを設定する。
  開始ミリ秒と終了ミリ秒の大小関係が逆の場合は入れ替えて設定する。

  パラメータ:
    `millis1` - 開始ミリ秒。
    `millis2` - 終了ミリ秒。
    `calendar` - カレンダオブジェクト。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ）。

### getStart

    public DateTime getStart()

  開始日時を取得する。
  二つの日時のうちの小さい方を返す。

  オーバーライド:
    クラス `Range<DateTime>` 内の `getStart`
  戻り値:
    開始日時。

### getEnd

    public DateTime getEnd()

  終了日時を取得する。
  二つの日時のうちの大きい方を返す。

  オーバーライド:
    クラス `Range<DateTime>` 内の `getEnd`
  戻り値:
    終了日時。

### intervalInYear

    public int intervalInYear()

  二つの日時の差を年単位で求める。
  二つの日時の大きい方が、小さい方の翌年の日時よりも前の場合に0と数える。 例えば、2005-04-10〜2006-04-09の場合は0、2005-04-10〜2006-04-11の場合は1を 返す。

  戻り値:
    このオブジェクトが保持する二つの日時の年単位の差。

### intervalInMonth

    public int intervalInMonth()

  二つの日時の差を月単位で求める。
  二つの日時の大きい方が、小さい方の翌月の日時よりも前の場合に0と数える。 例えば、2006-04-10〜2006-05-09の場合は0、2006-04-10〜2006-05-11の場合は1を 返す。

  戻り値:
    このオブジェクトが保持する二つの日時の月単位の差。

### intervalInDay

    public int intervalInDay()

  二つの日時の差を日単位で求める。
  二つの日時の大きい方が、小さい方の翌日の日時よりも前の場合に0と数える。 例えば、2006-04-10 11:22:33〜2006-04-11 11:22:32の場合は0、 2006-04-10 11:22:33〜2006-04-11 11:22:34の場合は1を返す。

  戻り値:
    このオブジェクトが保持する二つの日時の日単位の差。

### intervalInHour

    public long intervalInHour()

  二つの日時の差を時単位で求める。
  二つの日時の大きい方が、小さい方の次の時の日時よりも前の場合に0と数える。 例えば、2006-04-10 11:22:33〜2006-04-10 12:22:32の場合は0、 2006-04-10 11:22:33〜2006-04-10 12:22:34の場合は1を返す。

  戻り値:
    このオブジェクトが保持する二つの日時の時単位の差。

### intervalInMinute

    public long intervalInMinute()

  二つの日時の差を分単位で求める。
  二つの日時の大きい方が、小さい方の次の分の日時よりも前の場合に0と数える。 例えば、2006-04-10 11:22:33〜2006-04-10 11:23:32の場合は0、 2006-04-10 11:22:33〜2006-04-10 11:22:34の場合は1を返す。

  戻り値:
    このオブジェクトが保持する二つの日時の分単位の差。

### intervalInSecond

    public long intervalInSecond()

  二つの日時の差を秒単位で求める。
  二つの日時の大きい方が、小さい方の次の秒の日時よりも前の場合に0と数える。 例えば、2006-04-10 11:22:33.111〜2006-04-10 11:22:34.110の場合は0、 2006-04-10 11:22:33.111〜2006-04-10 11:22:34.112の場合は1を返す。

  戻り値:
    このオブジェクトが保持する二つの日時の分単位の差。

### countYears

    public int countYears()

  日時の範囲に含まれる年の数を求める。
  例えば、2005-04-10〜2007-04-09の場合は2005,2006,2007年が含まれるので3を 返す。

  戻り値:
    このオブジェクトが示す日時の範囲に含まれる年の数。

### countMonths

    public int countMonths()

  日時の範囲に含まれる月の数を求める。
  例えば、2006-04-10〜2006-06-09の場合は4,5,6月が含まれるので3を返す。

  戻り値:
    このオブジェクトが示す日時の範囲に含まれる月の数。

### countDays

    public int countDays()

  日時の範囲に含まれる日の数を求める。
  例えば、2006-04-10 11:22:33〜2006-04-12 11:22:32の場合は10,11,12日 が含まれるので3を返す。

  戻り値:
    このオブジェクトが示す日時の範囲に含まれる日の数。

### countHours

    public long countHours()

  日時の範囲に含まれる時の数を求める。
  例えば、2006-04-10 11:22:33〜2006-04-10 13:22:32の場合は11,12,13時が 含まれるので3を返す。

  戻り値:
    このオブジェクトが示す日時の範囲に含まれる時の数。

### countMinutes

    public long countMinutes()

  日時の範囲に含まれる分の数を求める。
  例えば、2006-04-10 11:22:33〜2006-04-10 11:24:32の場合は22,23,24分が 含まれるので3を返す。

  戻り値:
    このオブジェクトが示す日時の範囲に含まれる分の数。

### countSeconds

    public long countSeconds()

  日時の範囲に含まれる秒の数を求める。
  例えば、2006-04-10 11:22:33.444〜2006-04-10 11:22:35.443の場合は 33,34,35秒が含まれるので3を返す。

  戻り値:
    このオブジェクトが示す日時の範囲に含まれる秒の数。

### encompass

    public boolean encompass(DateTime dttm)

  指定された日時がこのオブジェクトの示す日時の範囲に含まれているかどうかを 判定する。

  オーバーライド:
    クラス `Range<DateTime>` 内の `encompass`
  パラメータ:
    `dttm` - 判定対象となる日時。
  戻り値:
    引数の日時が含まれている場合は`true`、そうでなければ `false`。
  例外:
    `java.lang.IllegalArgumentException` - 引数のもつカレンダが、このオブジェクト の保持するカレンダと異なる場合。
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ)。

### encompass

    public boolean encompass(DateTimeRange range)

  指定された日時の範囲がこのオブジェクトの示す日時の範囲に含まれているか どうかを判定する。

  パラメータ:
    `range` - 判定対象となる日時の範囲。
  戻り値:
    引数の日時の範囲が含まれている場合は`true`、そうでなければ `false`。
  例外:
    `java.lang.IllegalArgumentException` - 引数のもつカレンダが、このオブジェクト の保持するカレンダと異なる場合。
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ)。

### intersectsWith

    public DateTimeRange intersectsWith(DateTimeRange range)

  指定された日時の範囲とこのオブジェクトの示す日時の範囲の重なる範囲を 取得する。

  パラメータ:
    `range` - 日時の範囲。
  戻り値:
    引数の日時の範囲とこのオブジェクトとが重なる範囲。
  例外:
    `java.lang.IllegalArgumentException` - 引数のもつカレンダが、このオブジェクト の保持するカレンダと異なる場合。
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ)。

### expandsWith

    public DateTimeRange expandsWith(DateTime dttm)

  指定された日時を含むように、このオブジェクトの示す範囲を拡張した範囲を取得 する。
  元から指定された日時を含んでいた場合は、このオブジェクトと同じ範囲を返す。

  オーバーライド:
    クラス `Range<DateTime>` 内の `expandsWith`
  パラメータ:
    `dttm` - 日時オブジェクト。
  戻り値:
    指定された日時を含むように拡張された範囲。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ）。

### expandsWith

    public DateTimeRange expandsWith(DateTimeRange range)

  指定された範囲を含むように、このオブジェクトの示す範囲を拡張した範囲を 取得する。
  元から指定された範囲を含んでいた場合は、このオブジェクトと同じ範囲を返す。

  パラメータ:
    `range` - 範囲。
  戻り値:
    指定された範囲を含むように拡張された範囲。
  例外:
    `java.lang.AssertionError` - 引数がヌルの場合（デバッグモードのみ）。

概要 | パッケージ | クラス | 使用 | 階層ツリー | 非推奨 API | 索引 | ヘルプ
前のクラス 次のクラス | フレームあり フレームなし
概要: 入れ子 | フィールド | コンストラクタ | メソッド | 詳細: フィールド | コンストラクタ | メソッド

Copyright (C) SATOH Takayuki All Rights Reserved.