class Interval[T] extends Serializable
「区間」を表すクラス。
閉区間とは、lower <= x <= upperであらわされる区間であり、 開区間とは、lower < x < upperであらわされる区間である。 どちらか一方のみが <= で、他方が <
である場合は、半開区間と言う。
The rules of this class are consistent with the common mathematical definition of "interval". For a simple explanation, see http://en.wikipedia.org/wiki/Interval_(mathematics)
Interval (and its "ConcreteInterval" subclass) can be used for any objects that have a natural ordering reflected by implementing the Comparable interface. For example, Integer implements Comparable, so if you want to check if an Integer is within a range, make an Interval. Any class of yours which implements Comparable can have intervals defined this way.
- T
区間要素の型
- Alphabetic
- By Inheritance
- Interval
- Serializable
- AnyRef
- Any
- Hide All
- Show All
- Public
- Protected
Instance Constructors
- new Interval(lower: LimitValue[T], isLowerClosed: Boolean, upper: LimitValue[T], isUpperClosed: Boolean)
インスタンスを生成する。
- new Interval(lower: IntervalLimit[T], upper: IntervalLimit[T])
- lower
下側限界
- upper
上側限界
Value Members
- final def !=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def ##: Int
- Definition Classes
- AnyRef → Any
- final def ==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
- final def asInstanceOf[T0]: T0
- Definition Classes
- Any
- def clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.CloneNotSupportedException]) @native()
- def complementRelativeTo(other: Interval[T]): Seq[Interval[T]]
この区間の補区間と与えた区間
otherの共通部分を返す。この区間の補区間と与えた区間
otherの共通部分を返す。この区間と与えた区間に共通部分がない場合は、
otherを要素とする要素数1の区間列を返す。 与えた区間が、この区間を完全に内包する場合は、2つの区間に分かれるため、要素数が2の区間列を返す。 逆にこの区間が、与えた区間を完全に内包する場合は、要素数0の区間列を返す。 上記以外の場合、この区間の補区間と与えた区間の共通部分を要素とする要素数1の区間列を返す。- other
対照となる区間
- returns
補区間と対照区間の共通部分のリスト
- See also
- def covers(other: Interval[T]): Boolean
この区間が、指定した区間
otherを完全に内包するかどうかを検証する。この区間が、指定した区間
otherを完全に内包するかどうかを検証する。- other
区間
- returns
完全に内包する場合は
true、そうでない場合はfalse
- lazy val emptyOfSameType: Interval[T]
この区間と同じ限界値を持つ、新しい開区間を生成する。
この区間と同じ限界値を持つ、新しい開区間を生成する。
- returns
新しい開区間
- final def eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def equals(obj: Any): Boolean
この区間と、与えた区間
otherの同一性を検証する。この区間と、与えた区間
otherの同一性を検証する。両者が共に空の区間であった場合は
true、どちらか一方のみが空の区間であった場合はfalseを返す。 両者とも単一要素区間であった場合は、単一要素となる限界値同士を比較し、一致した場合はtrueを返す。 また、どちらか一方のみが単一要素区間であった場合はfalseを返す。otherがInterval以外であった場合は、必ずfalseを返す。- obj
比較対象の区間
- returns
同一である場合は
true、そうでない場合はfalse
- Definition Classes
- Interval → AnyRef → Any
- def finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.Throwable])
- def gap(other: Interval[T]): Interval[T]
この区間と与えた区間
otherの間にある区間を取得する。この区間と与えた区間
otherの間にある区間を取得する。例えば、[3, 5) と [10, 20) の gap は、[5, 19) である。 2つの区間が共通部分を持つ場合は、空の区間を返す。
- other
比較対象の区間
- returns
ギャップ区間
- final def getClass(): Class[_ <: AnyRef]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val hasLowerLimit: Boolean
下側限界があるかどうかを取得する。
下側限界があるかどうかを取得する。
Warning: This method should generally be used for display purposes and interactions with closely coupled classes. Look for (or add) other methods to do computations.
警告:このメソッドは一般的に、この値の表示目的および、このクラスと結合度の高いクラスとの インタラクションに使用する。不用意なこのメソッドの使用は、このクラスとクライアント側のクラスの 結合度をいたずらに高めてしまうことを表す。この値を計算に使用したい場合は、他の適切なメソッドを探すか、 このクラスに新しいメソッドを追加することを検討すること。
- returns
下側限界がある場合は
true、そうでない場合はfalse
- val hasUpperLimit: Boolean
上側限界があるかどうかを取得する。
上側限界があるかどうかを取得する。
Warning: This method should generally be used for display purposes and interactions with closely coupled classes. Look for (or add) other methods to do computations.
警告:このメソッドは一般的に、この値の表示目的および、このクラスと結合度の高いクラスとの インタラクションに使用する。不用意なこのメソッドの使用は、このクラスとクライアント側のクラスの 結合度をいたずらに高めてしまうことを表す。この値を計算に使用したい場合は、他の適切なメソッドを探すか、 このクラスに新しいメソッドを追加することを検討すること。
- returns
上側限界がある場合は
true、そうでない場合はfalse
- def hashCode(): Int
- Definition Classes
- Interval → AnyRef → Any
- def includes(value: LimitValue[T]): Boolean
指定した値
valueが、この区間に含まれるかどうかを検証する。指定した値
valueが、この区間に含まれるかどうかを検証する。- value
値
- returns
含まれる場合は
true、そうでない場合はfalse
- val includesLowerLimit: Boolean
下側限界が閉じているかどうかを取得する。
下側限界が閉じているかどうかを取得する。
Warning: This method should generally be used for display purposes and interactions with closely coupled classes. Look for (or add) other methods to do computations.
警告:このメソッドは一般的に、この値の表示目的および、このクラスと結合度の高いクラスとの インタラクションに使用する。不用意なこのメソッドの使用は、このクラスとクライアント側のクラスの 結合度をいたずらに高めてしまうことを表す。この値を計算に使用したい場合は、他の適切なメソッドを探すか、 このクラスに新しいメソッドを追加することを検討すること。
- returns
下側限界が閉じている場合は
true、そうでない場合はfalse
- val includesUpperLimit: Boolean
上側限界が閉じているかどうかを取得する。
上側限界が閉じているかどうかを取得する。
Warning: This method should generally be used for display purposes and interactions with closely coupled classes. Look for (or add) other methods to do computations.
警告:このメソッドは一般的に、この値の表示目的および、このクラスと結合度の高いクラスとの インタラクションに使用する。不用意なこのメソッドの使用は、このクラスとクライアント側のクラスの 結合度をいたずらに高めてしまうことを表す。この値を計算に使用したい場合は、他の適切なメソッドを探すか、 このクラスに新しいメソッドを追加することを検討すること。
- returns
上側限界値が閉じている場合は
true、そうでない場合はfalse
- def intersect(other: Interval[T]): Interval[T]
この区間と与えた区間
otherの積集合(共通部分)を返す。この区間と与えた区間
otherの積集合(共通部分)を返す。共通部分が存在しない場合は、空の区間を返す。
- other
比較対象の区間
- returns
積集合(共通部分)
- def intersects(other: Interval[T]): Boolean
この区間と、与えた区間
otherの間に共通部分が存在するかどうか検証する。この区間と、与えた区間
otherの間に共通部分が存在するかどうか検証する。- other
対象区間
- returns
共通部分が存在する場合は
true、そうでない場合はfalse
- def isAbove(value: LimitValue[T]): Boolean
指定した値
valueが、この区間の下側限界を超過していないかどうかを検証する。指定した値
valueが、この区間の下側限界を超過していないかどうかを検証する。- value
値
- returns
超過していない場合は
true、そうでない場合はfalse
- def isBelow(value: LimitValue[T]): Boolean
指定した値
valueが、この区間の上側限界を超過していないかどうかを検証する。指定した値
valueが、この区間の上側限界を超過していないかどうかを検証する。- value
値
- returns
超過していない場合は
true、そうでない場合はfalse
- def isClosed: Boolean
この区間が閉区間であるかどうかを検証する。
この区間が閉区間であるかどうかを検証する。
- returns
閉区間である場合は
true、そうでない場合(半開区間を含む)はfalse
- def isEmpty: Boolean
この区間が空であるかどうかを検証する。
この区間が空であるかどうかを検証する。
区間が空であるとは、上側限界値と下側限界値が同値であり、かつ、開区間であることを示す。 例えば
3 < x < 3のような状態である。- returns
空である場合は
true、そうでない場合はfalse
- final def isInstanceOf[T0]: Boolean
- Definition Classes
- Any
- def isOpen: Boolean
この区間が開区間であるかどうかを検証する。
この区間が開区間であるかどうかを検証する。
- returns
開区間である場合は
true、そうでない場合(半開区間を含む)はfalse
- def isSingleElement: Boolean
この区間が単一要素区間であるかどうかを検証する。 単一要素区間は、上側下側の両限界を持ち、さらにそれらの限界値が同値であり、かつ、開区間ではないことを示す。 例えば
3 <= x < 3,3 < x <= 3,3 <= x <= 3のような状態である。この区間が単一要素区間であるかどうかを検証する。 単一要素区間は、上側下側の両限界を持ち、さらにそれらの限界値が同値であり、かつ、開区間ではないことを示す。 例えば
3 <= x < 3,3 < x <= 3,3 <= x <= 3のような状態である。- returns
単一要素区間である場合は
true、そうでない場合はfalse
- def lowerLimit: LimitValue[T]
下側限界値を取得する。
下側限界値を取得する。
Warning: This method should generally be used for display purposes and interactions with closely coupled classes. Look for (or add) other methods to do computations.
警告:このメソッドは一般的に、この値の表示目的および、このクラスと結合度の高いクラスとの インタラクションに使用する。不用意なこのメソッドの使用は、このクラスとクライアント側のクラスの 結合度をいたずらに高めてしまうことを表す。この値を計算に使用したい場合は、他の適切なメソッドを探すか、 このクラスに新しいメソッドを追加することを検討すること。
- returns
下側限界値. 限界がない場合は、Limitless
- lazy val lowerLimitObject: IntervalLimit[T]
- final def ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
- def newOfSameType(lower: LimitValue[T], lowerClosed: Boolean, upper: LimitValue[T], upperClosed: Boolean): Interval[T]
この区間と同じ型
Tを持つ、新しい区間を生成する。 - final def notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- final def synchronized[T0](arg0: => T0): T0
- Definition Classes
- AnyRef
- def toString(): String
区間の文字列表現を取得する。
区間の文字列表現を取得する。
空の区間である場合は "{}", 単一要素区間である場合は "{x}"を返す。 また、例えば 3〜5 の開区間である場合は "(3, 5)"、閉区間である場合は "[3, 5]"、 半開区間であれば "[3, 5)" または "(3, 5]" の様に、開いた限界を "()"、 閉じた限界を "[]" で表現する。
- Definition Classes
- Interval → AnyRef → Any
- See also
java.lang.Object#toString()
- def upperLimit: LimitValue[T]
上側限界値を取得する。
上側限界値を取得する。
Warning: This method should generally be used for display purposes and interactions with closely coupled classes. Look for (or add) other methods to do computations.
警告:このメソッドは一般的に、この値の表示目的および、このクラスと結合度の高いクラスとの インタラクションに使用する。不用意なこのメソッドの使用は、このクラスとクライアント側のクラスの 結合度をいたずらに高めてしまうことを表す。この値を計算に使用したい場合は、他の適切なメソッドを探すか、 このクラスに新しいメソッドを追加することを検討すること。
- returns
上側限界値. 限界がない場合は、Limitless
- lazy val upperLimitObject: IntervalLimit[T]
- final def wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException])
- final def wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws(classOf[java.lang.InterruptedException]) @native()