CodeGym/Java blog/Tilfældig/Er der nextChar() i Scanner Class i Java?
John Squirrels
Niveau
San Francisco

Er der nextChar() i Scanner Class i Java?

Udgivet i gruppen
At tage tegninput i Java er ikke så simpelt som at tage input som en streng eller heltal. Scanner-klassen i Java fungerer med nextInt() , nextLong() , nextDouble() osv. Den understøtter dog ikke nextChar i Java, hvilket gør det lidt mere kompliceret at tage tegninput. Hvis du ønsker at tage char-input i Java, og nextChar() ikke virker, her er, hvordan du kan tage input som char korrekt.

nextChar() scannerklasse i Java

Der er ingen klassisk nextChar() -metode i Java Scanner-klassen. Det bedste og mest enkle alternativ til at tage char input i Java ville være next().charAt(0) . charAt (0) -kommandoen bruges i kombination med den simple next() -kommando, som instruerer Java til at optage det næste tegn eller den næste streng, der indtastes i kommandolinjen. Dette input kan være en streng, et tegn eller et tal. CharAt - kommandoen er en måde at filtrere de uønskede datatyper på og begrænser kun input til char-datatypen. Da charAt kun returnerer output i form af en char-værdi, konverterer den enhver type datatype til en char-type. For at tage et tegn-input ved hjælp af Scanner og next(), kan du bruge disse to linjer kode.
Scanner input = new Scanner (system.in);
char a = input.next().charAt(0);
Når du bruger next() , fortæller du Java, at den er ved at acceptere et input af en uspecificeret datatype. Dette input kan indeholde et uendeligt antal tegn. Men ved at bruge charAt- kommandoen og sende '0' som indeks, tager du kun et enkelt tegn som input og gemmer det i en variabel. Returværdien for inputlinjen vil være et enkelt tegn. Da vi instruerede compileren til at acceptere det input, den skulle modtage næste gang, er det ligeglad med, at kun et enkelt tegn blev initialiseret. Kodningseksempler for at acceptere et tegn-input i Java er skrevet nedenfor.
import java.util.Scanner;
   public class CharExample {
       public static void main(String[] args) {

           //Initializing input
           Scanner input = new Scanner(System.in);
           System.out.print("Input any character: ");

           //Using next().charAt(0) to Accept Char Input
           char a = input.next().charAt(0);

           //Printing the Contents of 'a'
           System.out.println("The Variable A Contains the Following Data: " + a);
       }
   }
Udgangen er:
Indtast et hvilket som helst tegn: l Variablen A indeholder følgende data: l
Der er andre alternativer til at acceptere tegninput fra brugere i Java. Du kan bruge reader.useDelimiter(“”) og reader.next() , som også er en intuitiv måde at få opgaven løst.
Kommentarer
  • Populær
  • Ny
  • Gammel
Du skal være logget ind for at skrive en kommentar
Denne side har ingen kommentarer endnu