Package de.kappich.pat.gnd.utils
Class Interval<E extends Number>
java.lang.Object
de.kappich.pat.gnd.utils.Interval<E>
- All Implemented Interfaces:
Comparable<Interval<E>>
Eine generische Klasse zur Verwaltung von Intervallen von Zahlen.
Die Klasse Interval
dient zur Verwaltung von Intervalle der Klasse E
, die die Klasse Number
erweitert. Jedes Intervall hat
eine Untergrenze und eine Obergrenze, wobei es keine festgelegte Interpretation gibt, ob diese Werte zum Intervall dazu gehören oder nicht. Daneben
gibt es noch einen Zähler, mit dessen Hilfe ansonsten gleiche Intervalle in einer Menge koexistieren können.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionint
boolean
getCopy()
Gibt ein neues Intervall zurück, dass dieselben unteren und oberen Schranken besitzt, und auch denselben Zählerwert.int
Der Getter des Zählers.Der Getter der unteren Grenze.Der Getter der oberen Grenze.int
hashCode()
Der Hashcode eines Intervalls hängt nur von der oberen und unteren Grenze ab, nicht aber vom Zähler.intersection
(Interval<E> o) Gibt die Schnittmenge der beiden Intervalle zurück odernull
, wenn der Schnitt leer ist.boolean
intersects
(Interval<E> o) Gibttrue
zurück, wenn die beiden Intervalle im Sinne abgeschlossener Intervalle eine nicht-leere Schnittmenge haben.double
length()
Die Länge eines Intervalls ist die Differenz von oberer und unterer Grenze.void
setCounter
(int counter) Der Setter des Zählers.toString()
-
Constructor Details
-
Interval
Konstruiert ein Intervall aus den übergebenen Grenzen.- Parameters:
lowerBound
- die untere GrenzeupperBound
- die obere Grenze
-
-
Method Details
-
getLowerBound
Der Getter der unteren Grenze.- Returns:
- die untere Grenze
-
getUpperBound
Der Getter der oberen Grenze.- Returns:
- die obere Grenze
-
getCounter
public int getCounter()Der Getter des Zählers.- Returns:
- der Zählerwert
-
setCounter
public void setCounter(int counter) Der Setter des Zählers.- Parameters:
counter
- neue Zählerwert
-
intersects
Gibttrue
zurück, wenn die beiden Intervalle im Sinne abgeschlossener Intervalle eine nicht-leere Schnittmenge haben.- Parameters:
o
- ein Intervall- Returns:
true
genau dann, wenn die beiden Intervalle im Sinne abgeschlossener Intervalle eine nicht-leere Schnittmenge haben
-
intersection
Gibt die Schnittmenge der beiden Intervalle zurück odernull
, wenn der Schnitt leer ist.- Parameters:
o
- ein Intervall- Returns:
- die Schnittmenge oder
null
-
length
public double length()Die Länge eines Intervalls ist die Differenz von oberer und unterer Grenze. Achtung: da keine Überprüfung stattfindet, ob diese Grenzen sinnvolle Werte enthalten oder ihre Relation stimmt, kann das Ergebnis entsprechend ausfallen.- Returns:
- die Länge
-
getCopy
Gibt ein neues Intervall zurück, dass dieselben unteren und oberen Schranken besitzt, und auch denselben Zählerwert.- Returns:
- die Kopie
-
compareTo
- Specified by:
compareTo
in interfaceComparable<E extends Number>
-
equals
-
hashCode
public int hashCode()Der Hashcode eines Intervalls hängt nur von der oberen und unteren Grenze ab, nicht aber vom Zähler. -
toString
-