Hay dos enfoques, puede tomar exactamente un personaje o estrictamente un carácter. Cuando usa exactamente, el lector tomará solo el primer carácter, independientemente de cuántos caracteres ingrese.
Por ejemplo:
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());
}
}
}
Cuando ingresa un conjunto de caracteres como entrada, diga "abcd", el lector considerará solo el primer carácter, es decir, la letra 'a'
Pero cuando se usa estrictamente, la entrada debe ser solo un carácter. Si la entrada tiene más de un carácter, el lector no tomará la entrada.
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());
}
}
}
Suponga que ingresa la entrada "abcd", no se toma ninguna entrada y la variable c tendrá un valor nulo.