diff options
Diffstat (limited to 'BJC-Utils2')
3 files changed, 20 insertions, 9 deletions
diff --git a/BJC-Utils2/src/examples/java/bjc/utils/examples/DiabloItemGen.java b/BJC-Utils2/src/examples/java/bjc/utils/examples/DiabloItemGen.java index fd0b221..8445056 100644 --- a/BJC-Utils2/src/examples/java/bjc/utils/examples/DiabloItemGen.java +++ b/BJC-Utils2/src/examples/java/bjc/utils/examples/DiabloItemGen.java @@ -1,17 +1,21 @@ package bjc.utils.examples; -import java.util.StringTokenizer; - import bjc.utils.funcdata.FunctionalList; import bjc.utils.funcdata.FunctionalStringTokenizer; import bjc.utils.gen.WeightedGrammar; +/** + * Example showing how to use the weighted random number generator. + * + * @author ben + * + */ public class DiabloItemGen { private static WeightedGrammar<String> parts = new WeightedGrammar<>(); private static void addCase(String rn, int prob, String prts) { - parts.addCase(rn, prob, new FunctionalStringTokenizer( - new StringTokenizer(prts, " ")).toList(s -> s)); + parts.addCase(rn, prob, + FunctionalStringTokenizer.fromString(prts).toList(s -> s)); } private static void addInfixRules() { diff --git a/BJC-Utils2/src/examples/java/bjc/utils/examples/RandomStringExamples.java b/BJC-Utils2/src/examples/java/bjc/utils/examples/RandomStringExamples.java index 368c8ca..d7e1bd1 100644 --- a/BJC-Utils2/src/examples/java/bjc/utils/examples/RandomStringExamples.java +++ b/BJC-Utils2/src/examples/java/bjc/utils/examples/RandomStringExamples.java @@ -1,7 +1,5 @@ package bjc.utils.examples; -import java.util.StringTokenizer; - import bjc.utils.funcdata.FunctionalList; import bjc.utils.funcdata.FunctionalStringTokenizer; import bjc.utils.gen.RandomGrammar; @@ -47,9 +45,9 @@ public class RandomStringExamples { private static void addRule(String rule, String... cases) { FunctionalList<FunctionalList<String>> cses = new FunctionalList<>(); - for (String string : cases) { - cses.add(new FunctionalStringTokenizer( - new StringTokenizer(string, " ")).toList(s -> s)); + for (String strang : cases) { + cses.add(FunctionalStringTokenizer.fromString(strang) + .toList(s -> s)); } rg.makeRule(rule, cses); 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 1732043..0fe8421 100644 --- a/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java +++ b/BJC-Utils2/src/main/java/bjc/utils/funcdata/FunctionalStringTokenizer.java @@ -52,4 +52,13 @@ 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, " ")); + } } |
