Class Intervall

java.lang.Object
  extended byIntervall
All Implemented Interfaces:
java.lang.Comparable

public class Intervall
extends java.lang.Object
implements java.lang.Comparable

Intervall.java Eine Klasse, die offene, geschlossene oder teiloffene Intervalle repräsentiert. Created on 19.11.2003

Version:
25.11.2003
Author:
M. Serhat Cinar

Nested Class Summary
 class Intervall.LowBoundIsEqualToHighBoundException
           
 class Intervall.LowBoundIsHigherThanHighBoundException
           
 
Field Summary
private  int high
           
private  boolean isLeftOpen
           
private  boolean isRightOpen
           
private  int low
           
private static java.util.Random rnd
           
 
Constructor Summary
Intervall(int low, int high)
          Konstruktor für ein nichtoffenes Intervall
Intervall(int low, int high, boolean isLeftOpen, boolean isRightOpen)
          Konstruktor mit Parametern für Offenheit des Intervalles
 
Method Summary
 int compareTo(java.lang.Object o)
          a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object.
static Intervall createRandom()
          Generiert zufällige Intervalle
 boolean equals(java.lang.Object o)
          Vergleicht zwei Intervalle auf Gleichheit.
 int getHigh()
          Liefert die Obergrenze dieses Intervalles.
 int getLow()
          Liefert die Untergrenze dieses Intervalles.
 boolean isLeftOpen()
          Gibt Information darüber, ob die Untergrenze des Intervalles offen ist oder nicht.
 boolean isRightOpen()
          Gibt Information darüber, ob die Obergrenze des Intervalles offen ist oder nicht.
static void main(java.lang.String[] argv)
           
 boolean overlap(Intervall i)
          Testet, ob das gegebene Intervall sich mit diesem Intervall überscheidet.
static Intervall parseString(java.lang.String intervallstring)
          Parst aus einem String ein Intervall.
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

low

private int low

isLeftOpen

private boolean isLeftOpen

high

private int high

isRightOpen

private boolean isRightOpen

rnd

private static final java.util.Random rnd
Constructor Detail

Intervall

public Intervall(int low,
                 int high)
          throws Intervall.LowBoundIsHigherThanHighBoundException,
                 Intervall.LowBoundIsEqualToHighBoundException
Konstruktor für ein nichtoffenes Intervall


Intervall

public Intervall(int low,
                 int high,
                 boolean isLeftOpen,
                 boolean isRightOpen)
          throws Intervall.LowBoundIsHigherThanHighBoundException,
                 Intervall.LowBoundIsEqualToHighBoundException
Konstruktor mit Parametern für Offenheit des Intervalles

Method Detail

main

public static void main(java.lang.String[] argv)

getLow

public int getLow()
Liefert die Untergrenze dieses Intervalles.

Returns:
Wert der Untergrenze dieses Intervalles

getHigh

public int getHigh()
Liefert die Obergrenze dieses Intervalles.

Returns:
Wert der Obergrenze dieses Intervalles

isLeftOpen

public boolean isLeftOpen()
Gibt Information darüber, ob die Untergrenze des Intervalles offen ist oder nicht.

Returns:
true, falls das Intervall links-offen ist, false wenn es geschlossen ist

isRightOpen

public boolean isRightOpen()
Gibt Information darüber, ob die Obergrenze des Intervalles offen ist oder nicht.

Returns:
true, falls das Intervall rechts-offen ist, false wenn es geschlossen ist

equals

public boolean equals(java.lang.Object o)
Vergleicht zwei Intervalle auf Gleichheit. Zwei Intervalle sind nur dann gleich, wenn ihre low und high Werte übereinstimmen und beide Intervallgrenzen gleichen Typs sind, also offen oder geschlossen. Offene oder geschlossene Intervallgrenzen werden berücksichtigt.

See Also:
Object.equals(java.lang.Object)

compareTo

public int compareTo(java.lang.Object o)
              throws java.lang.ClassCastException
a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object. Offene oder geschlossene Intervallgrenzen werden berücksichtigt.

Specified by:
compareTo in interface java.lang.Comparable
Throws:
java.lang.ClassCastException
See Also:
Comparable.compareTo(java.lang.Object)

overlap

public boolean overlap(Intervall i)
Testet, ob das gegebene Intervall sich mit diesem Intervall überscheidet. Offene oder geschlossene Intervallgrenzen werden berücksichtigt.

Parameters:
i - Intervall, mit dem verglichen werden soll.
Returns:
true falls beide Intervalle sich überlappen, false sonst.

toString

public java.lang.String toString()
See Also:
Object.toString()

createRandom

public static Intervall createRandom()
Generiert zufällige Intervalle

Returns:
Das zufällig generierte Intervall

parseString

public static Intervall parseString(java.lang.String intervallstring)
                             throws java.text.ParseException,
                                    Intervall.LowBoundIsHigherThanHighBoundException,
                                    Intervall.LowBoundIsEqualToHighBoundException
Parst aus einem String ein Intervall.
Format:
Geschlossene Intervallgrenzen: [ low ; high ]
Offene Intervallgrenzen: ] low ; high [
Die Intervallgrenzen können beliebig geschlossen oder offen sein. Leerzeichen müssen nicht benutzt werden. low sowie high sind Integer Zahlen, die dem Format der Klasse java.lang.Integer entsprechen.

Parameters:
intervallstring - String, der geparst werden soll.
Returns:
Intervall, das aus dem String erzeugt wurde.
Throws:
java.text.ParseException
Intervall.LowBoundIsHigherThanHighBoundException
Intervall.LowBoundIsEqualToHighBoundException
See Also:
Integer.parseInt(String)