2つのアプローチがあります。正確に1文字を使用することも、厳密に1文字を使用することもできます。正確に使用すると、入力した文字数に関係なく、リーダーは最初の文字のみを取得します。
例えば:
import java.util.Scanner;
public class ReaderExample {
public static void main(String[] args) {
try {
Scanner reader = new Scanner(System.in);
char c = reader.findInLine(".").charAt(0);
reader.close();
System.out.print(c);
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
「abcd」などの文字のセットを入力として指定すると、リーダーは最初の文字、つまり文字「a」のみを考慮します。
ただし、厳密に使用する場合、入力は1文字のみにする必要があります。入力が複数の文字である場合、リーダーは入力を受け取りません
import java.util.Scanner;
public class ReaderExample {
public static void main(String[] args) {
try {
Scanner reader = new Scanner(System.in);
char c = reader.next(".").charAt(0);
reader.close();
System.out.print(c);
} catch (Exception ex) {
System.out.println(ex.getMessage());
}
}
}
入力に「abcd」を指定し、入力が行われず、変数cの値がNullであるとします。