Subato

Resource Files

String Spiterator

Schreiben Sie eine Klasse, die es erlaubt über die Zeichen eines String zu iterieren. Sehen Sie vor, dass ein trySplit die Arbeit fair auf zwei Spliterator-Objekte verteilt. Setzen Sie auch estimateSize auf einen möglichst genauen Wert.


package name.panitz.util.streams; import java.util.Spliterator; import java.util.function.Consumer; import java.util.stream.StreamSupport; public class SpliterateString implements Spliterator<Character> { int i = 0; int end; String s; public SpliterateString(String s) { this(0, s.length() - 1, s); } public SpliterateString(int i, int end, String s) { this.i = i; this.end = end; this.s = s; } public static void main(String[] args) { StreamSupport.stream(new SpliterateString("hallo"), false) .forEach(x -> System.out.println(x)); System.out.println("und nun parallel"); StreamSupport.stream(new SpliterateString("hallo"), true) .forEach(x -> System.out.println(x)); } }
java