diff options
Diffstat (limited to 'BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java')
| -rw-r--r-- | BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java | 66 |
1 files changed, 36 insertions, 30 deletions
diff --git a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java index ed4b9d3..aa59a31 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java +++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java @@ -12,19 +12,20 @@ import java.util.function.Function; */ public class FunctionalStringTokenizer { /** - * The string tokenizer being driven + * Create a new tokenizer from the specified string. + * + * @param s + * The string to create a tokenizer from. + * @return A new tokenizer that splits the provided string on spaces. */ - private StringTokenizer inp; + public static FunctionalStringTokenizer fromString(String s) { + return new FunctionalStringTokenizer(new StringTokenizer(s, " ")); + } /** - * Create a functional string tokenizer from a non-functional one - * - * @param inp - * The non-functional string tokenizer to wrap + * The string tokenizer being driven */ - public FunctionalStringTokenizer(StringTokenizer inp) { - this.inp = inp; - } + private StringTokenizer inp; /** * Create a functional string tokenizer from a given string @@ -40,14 +41,26 @@ public class FunctionalStringTokenizer { * Create a functional string tokenizer from a given string and set of * seperators * - * @param inp The string to tokenize - * @param seps The string to use for splitting + * @param inp + * The string to tokenize + * @param seps + * The string to use for splitting */ public FunctionalStringTokenizer(String inp, String seps) { this.inp = new StringTokenizer(inp, seps); } /** + * Create a functional string tokenizer from a non-functional one + * + * @param inp + * The non-functional string tokenizer to wrap + */ + public FunctionalStringTokenizer(StringTokenizer inp) { + this.inp = inp; + } + + /** * Execute a provided action for each of the remaining tokens * * @param f @@ -60,6 +73,15 @@ public class FunctionalStringTokenizer { } /** + * Get the string tokenizer encapsuled by this + * + * @return The encapsulated tokenizer + */ + public StringTokenizer getInternal() { + return inp; + } + + /** * Return the next token from the tokenizer Returns null if no more * tokens are available * @@ -73,6 +95,9 @@ public class FunctionalStringTokenizer { * Convert the contents of this tokenizer into a list. Consumes all of * the input from this tokenizer. * + * @param <E> + * The type of the converted tokens + * * @param f * The function to use to convert tokens. * @return A list containing all of the converted tokens. @@ -84,23 +109,4 @@ public class FunctionalStringTokenizer { return r; } - - /** - * Create a new tokenizer from the specified string. - * - * @param s - * The string to create a tokenizer from. - * @return A new tokenizer that splits the provided string on spaces. - */ - public static FunctionalStringTokenizer fromString(String s) { - return new FunctionalStringTokenizer(new StringTokenizer(s, " ")); - } - - /** - * Get the string tokenizer encapsuled by this - * @return The encapsulated tokenizer - */ - public StringTokenizer getInternal() { - return inp; - } } |
