Sequence |
Eine Klasse für die Repräsentation
von Zahlenfolgen über den ganzen Zahlen.
|
|
Die Zahlenfolgen werden wie Datenströme behandelt,
es gibt eine Methode zur Berechnung des nächsten Elements
in der Folge.
|
|
Die hier verwendete Technik findet sich in der
Klasse Reader
im Paket java.io
und deren Unterklassen wieder, insbesondere in den Filterklassen.
Die Klasse InputStream
im Paket java.io
und deren Unterklassen arbeiten ebenfalls mit dieser Technik.
|
|
Das Beispiel ist einfacher als die JDK Klassen, da hier
mit unbeschränkten Zahlenfogen gearbeitet wird. Ein
Test auf Ende der Zahlenfolgen, ein EOF-Test, ist also
nicht notwendig.
|
| |
|
die Datenstrom-Objekte können durch Kombination
und Hintereinanderschalten zu neuen, komplexen
Datenströmen zusammengesetzt werden.
|
| |
Anfangsstücke |
Die Klassen
Const
Count
Fibonacci
können als Anfangsstück für eine zusammengesetzte
Datenfolge verwendet werden.
|
| |
Filter |
sind Klassen, bei denen neue Datenströme aus
vorhandenen erzeugt werden, indem die einzelnen Elemente
der Datenströme beliebig verarbeitet werden.
|
|
Filter besitzen in den Konstruktoren also immer ein
oder mehrere Datenstrom-Objekte als Parameter.
|
| |
mit einem Datenstrom |
Power
Scale
Unique
Sum
Diff
|
| |
mit zwei Datenströmen |
Merge
oder
Merge1
|
| |
ein Testprogramm
|
Hamilton
|
|
Testlauf:
java Hamilton
|
| |
-->
|
streams
|