Skip to contentMethod: contains(Numberable)
      1: package auftraege.auftragsBildungsParameter.abstraction;
2: 
3: import util.Numberable;
4: 
5: /**
6:  * ein Parameter, welcher eine Spanne von zwei {@link Numberable}s oder {@link util.Numberable}s repräsentiert,
7:  * von welchen die untereGrenze inklusive und die obereGrenze exklusive ist.
8:  *
9:  * @param <T>
10:  */
11: public abstract class SpannParam<T extends Numberable> {
12: 
13:     private final T obereGrenze;
14:     private final T untereGrenze;
15: 
16:     /**
17:      * erstellt einen {@link SpannParam} für die Klasse {@link T}, welcher die Spanne von {@link T}s zwischen der unteren und oberen Grenze repräsentiert.
18:      * Hierbei ist die untere Grenze inklusive und die obere exklusive.
19:      *
20:      * @param obereGrenze  obere Grenze für die {@link T}-Spanne (exklusive)
21:      * @param untereGrenze untere Grenze für die {@link T}-Spanne (inklusive)
22:      */
23:     public SpannParam(final T untereGrenze, final T obereGrenze) {
24:         this.obereGrenze = obereGrenze;
25:         this.untereGrenze = untereGrenze;
26:     }
27: 
28:     /**
29:      * @param element zu prüfendes Element.
30:      * @return <i>true</i>, falls das Element enthalten ist. Ansonsten <i>false</i>.
31:      */
32:     public boolean contains(final T element) {
33:•        return element.getValue().longValue() >= this.untereGrenze.getValue().longValue() && element.getValue().longValue() < this.obereGrenze.getValue().longValue();
34:     }
35: 
36: 
37:     /**
38:      * @return liefert die obere Grenze des Parameters.
39:      */
40:     public T getObereGrenze() {
41:         return this.obereGrenze;
42:     }
43: 
44:     /**
45:      * @return liefert die untere Grenze des Parameters.
46:      */
47:     public T getUntereGrenze() {
48:         return this.untereGrenze;
49:     }
50: }