it-swarm.com.de

Scannermethode, um ein Zeichen zu erhalten

Was ist die Scanner-Methode, um eine char von der Tastatur in Java zurückzugeben. 

wie nextLine() für String, nextInt() für int usw.

14
bizarrechaos

Um eine char von einer Scanner zu erhalten, können Sie die findInLine-Methode verwenden.

    Scanner sc = new Scanner("abc");
    char ch = sc.findInLine(".").charAt(0);
    System.out.println(ch); // prints "a"
    System.out.println(sc.next()); // prints "bc"

Wenn Sie eine Menge char von einer Scanner benötigen, kann es zweckmäßiger sein, das Trennzeichen (möglicherweise vorübergehend) in die leere Zeichenfolge zu ändern. Dadurch wird next() jedes Mal eine Länge-1-Zeichenfolge zurückgegeben.

    Scanner sc = new Scanner("abc");
    sc.useDelimiter("");
    while (sc.hasNext()) {
        System.out.println(sc.next());
    } // prints "a", "b", "c"
20

Sie können die Console-API (die in Java 6 erschienen ist) wie folgt verwenden:

Console cons = System.console();
if(cons != null) {
  char c = (char) cons.reader().read();  // Checking for EOF omitted
  ...
}

Wenn Sie nur eine einzige Zeile benötigen, müssen Sie nicht einmal das Reader-Objekt durchgehen:

String s = cons.readLine();
4
Itay Maman

Javas Scanner-Klasse verfügt nicht über eine integrierte Methode, um Zeichen für Zeichen aus einem Scanner zu lesen.

http://Java.Sun.com/javase/6/docs/api/Java/util/Scanner.html

Es sollte jedoch weiterhin möglich sein, einzelne Zeichen wie folgt vom Scanner abzurufen:

Scanner sc:

char c = sc.findInLine(".").charAt(0);

Und Sie könnten es verwenden, um jedes Zeichen in Ihrem Scanner wie folgt abzurufen:

while(sc.hasNext()){
    char c = sc.findInLine(".").charAt(0);
    System.out.println(c); //to print out every char in the scanner
}

Die findInLine () -Methode durchsucht Ihren Scanner und gibt den ersten String zurück, der dem regulären Ausdruck entspricht, den Sie ihm geben.

2
eipxen

sc.next (). charat (0) ......... ist die Methode zur Eingabe eines Zeichens nach Benutzer basierend auf der zur Laufzeit eingegebenen Zahl

beispiel: sc.next (). charat (2) ------------ >>>>>>>>

0
user3178887
Scanner sc = new Scanner (System.in)
char c = sc.next().trim().charAt(0);
0
Teena Sachdeva
Console cons = System.console();

Die obige Codezeile erstellt Nachteile als Nullreferenz. Der Code und die Ausgabe sind unten angegeben:

Console cons = System.console();
if (cons != null) {
    System.out.println("Enter single character: ");
    char c = (char) cons.reader().read();
    System.out.println(c);
}else{
    System.out.println(cons);
}

Ausgabe :

null

Der Code wurde auf dem Macbook Pro mit der Java-Version "1.6.0_37" getestet.

0
Satish Singhal