T
- 最終的にクライアント・アプリケーションに返却されるデータの型public class ConsoleScanner<T>
extends java.lang.Object
implements java.util.function.Supplier<T>
ConsoleScanner
はユーザに何度も再入力を求めます。int n = ConsoleScanner.intBuilder(0, 12).build().get();次の例では、列挙型
MyEnum
の要素の中のひとつを選択するようユーザに要求し、選択された要素を取得します。MyEnum selected = ConsoleScanner.enumBuilder(MyEnum.class).build().get();このほか、正規表現を指定して入力を求めることなども可能です。
修飾子とタイプ | クラスと説明 |
---|---|
static class |
ConsoleScanner.Builder<T>
ConsoleScanner オブジェクトを構築するためのビルダーです。 |
修飾子とタイプ | メソッドと説明 |
---|---|
static <T> ConsoleScanner.Builder<T> |
builder(java.util.function.Predicate<java.lang.String> judge,
java.util.function.Function<java.lang.String,T> converter,
java.lang.String prompt,
java.lang.String complaint)
任意の型の入力を取得するための
ConsoleScanner のビルダーを返します。 |
static <E extends java.lang.Enum<E>> |
enumBuilder(java.lang.Class<E> type)
列挙型の要素の中から選択された要素を取得するための
ConsoleScanner のビルダーを返します。 |
T |
get()
標準入力から対話的にユーザ入力値を取得し、目的の型に変換して返します。
|
static ConsoleScanner.Builder<java.lang.Integer> |
intBuilder(int lower,
int upper)
Integer 型の入力を取得するための ConsoleScanner のビルダーを返します。 |
static <T> ConsoleScanner.Builder<T> |
listBuilder(java.util.List<T> list)
リストの中から選択された要素を取得するための
ConsoleScanner のビルダーを返します。 |
static ConsoleScanner.Builder<java.lang.Long> |
longBuilder(long lower,
long upper)
Long 型の入力を取得するための ConsoleScanner のビルダーを返します。 |
static ConsoleScanner.Builder<java.lang.String> |
stringBuilder(java.util.regex.Pattern pattern)
String 型の入力を取得するための ConsoleScanner のビルダーを返します。 |
static ConsoleScanner.Builder<java.lang.String> |
stringBuilder(java.util.function.Predicate<java.lang.String> judge)
String 型の入力を取得するための ConsoleScanner のビルダーを返します。 |
static ConsoleScanner.Builder<java.lang.String> |
stringBuilder(java.lang.String regex)
String 型の入力を取得するための ConsoleScanner のビルダーを返します。 |
static ConsoleScanner<java.lang.String> |
waiter()
ユーザが確認するまで待機するための
ConsoleScanner を生成します。 |
static ConsoleScanner<java.lang.String> |
waiter(java.lang.String prompt)
ユーザが確認するまで待機するための
ConsoleScanner を生成します。 |
public static ConsoleScanner.Builder<java.lang.String> stringBuilder(java.util.function.Predicate<java.lang.String> judge)
String
型の入力を取得するための ConsoleScanner
のビルダーを返します。judge
- ユーザ入力値が要求形式に合致するかを判定する Predicate
ConsoleScanner.Builder
オブジェクトjava.lang.NullPointerException
- judge
が null
の場合public static ConsoleScanner.Builder<java.lang.String> stringBuilder(java.util.regex.Pattern pattern)
String
型の入力を取得するための ConsoleScanner
のビルダーを返します。pattern
- ユーザ入力値が要求形式に合致するかを判定する Pattern
ConsoleScanner.Builder
オブジェクトjava.lang.NullPointerException
- pattern
が null
の場合public static ConsoleScanner.Builder<java.lang.String> stringBuilder(java.lang.String regex)
String
型の入力を取得するための ConsoleScanner
のビルダーを返します。regex
- ユーザ入力値が要求形式に合致するかを判定する正規表現文字列ConsoleScanner.Builder
オブジェクトjava.lang.NullPointerException
- regex
が null
の場合java.util.regex.PatternSyntaxException
- regex
を Pattern
にコンパイルできない場合Pattern.compile(String)
public static ConsoleScanner.Builder<java.lang.Integer> intBuilder(int lower, int upper)
Integer
型の入力を取得するための ConsoleScanner
のビルダーを返します。lower
- 要求する範囲の下限値(この値を範囲に含みます)upper
- 要求する範囲の上限値(この値を範囲に含みます)ConsoleScanner.Builder
オブジェクトjava.lang.IllegalArgumentException
- upper
よりも lower
が大きい場合public static ConsoleScanner.Builder<java.lang.Long> longBuilder(long lower, long upper)
Long
型の入力を取得するための ConsoleScanner
のビルダーを返します。lower
- 要求する範囲の下限値(この値を範囲に含みます)upper
- 要求する範囲の上限値(この値を範囲に含みます)ConsoleScanner.Builder
オブジェクトjava.lang.IllegalArgumentException
- upper
よりも lower
が大きい場合public static <T> ConsoleScanner.Builder<T> listBuilder(java.util.List<T> list)
ConsoleScanner
のビルダーを返します。T
- 最終的にクライアント・アプリケーションに返却されるデータの型list
- 選択対象の要素が格納されたリストConsoleScanner.Builder
オブジェクトjava.lang.NullPointerException
- list
が null
の場合java.lang.IllegalArgumentException
- list
の要素数が 0
の場合public static <E extends java.lang.Enum<E>> ConsoleScanner.Builder<E> enumBuilder(java.lang.Class<E> type)
ConsoleScanner
のビルダーを返します。E
- 最終的にクライアント・アプリケーションに返却されるデータの型type
- 列挙型クラスConsoleScanner.Builder
オブジェクトjava.lang.NullPointerException
- type
が null
の場合public static <T> ConsoleScanner.Builder<T> builder(java.util.function.Predicate<java.lang.String> judge, java.util.function.Function<java.lang.String,T> converter, java.lang.String prompt, java.lang.String complaint)
ConsoleScanner
のビルダーを返します。T
- 最終的にクライアント・アプリケーションに返却されるデータの型judge
- ユーザ入力値が要求形式に合致するかを判定する Predicate
converter
- ユーザ入力文字列を T
型に変換するための Function
prompt
- 標準出力に表示するプロンプト文字列complaint
- ユーザが要求とは異なる形式で入力した場合に標準出力に表示するエラー文字列ConsoleScanner.Builder
オブジェクトjava.lang.NullPointerException
- judge
、converter
、prompt
、complaint
のいずれかが null
の場合public static ConsoleScanner<java.lang.String> waiter()
ConsoleScanner
を生成します。ConsoleScanner
の get()
メソッドは、
標準出力に「何か入力すると続行します >
」と表示し、
ユーザが何らかの入力を行うとその入力値を返します。ConsoleScanner
public static ConsoleScanner<java.lang.String> waiter(java.lang.String prompt)
ConsoleScanner
を生成します。ConsoleScanner
の get()
メソッドは、
標準出力にプロンプト文字列を表示し、
ユーザが何らかの入力を行うとその入力値を返します。prompt
- 標準出力に表示するプロンプト文字列ConsoleScanner
java.lang.NullPointerException
- prompt
が null
の場合