Scanner Class in Java: tipi di costruttori e metodi, come utilizzare [con esempi]

Pubblicato: 2020-07-28

Chiunque lavori con il linguaggio di programmazione Java conosce bene la classe Scanner in Java. E per gli aspiranti sviluppatori Java che non sanno cos'è la classe Scanner e come utilizzare la classe Scanner in Java, questo articolo è l'introduzione perfetta ad essa.

In questo post, ci impegneremo in una discussione dettagliata sulla classe Scanner in Java, sui suoi diversi metodi e su come funzionano. Quindi, se non vedi l'ora di saperne di più sulla classe Scanner in Java, continua a leggere fino alla fine!

Sommario

Che cos'è la classe Scanner in Java?

La classe Scanner in Java viene utilizzata principalmente per ottenere l'input dell'utente. Il pacchetto java.util lo contiene. La classe Scanner non solo estende la classe Object, ma può anche implementare interfacce Iterator e Closeable. Frammenta l'input dell'utente in token usando un delimitatore, che per impostazione predefinita è uno spazio bianco.

È abbastanza facile usare la classe Scanner: in primo luogo, crei un oggetto della classe e quindi usi uno dei metodi disponibili presenti nella documentazione della classe Scanner.

Oltre ad essere uno dei modi più semplici per ottenere i dati di input dell'utente, la classe Scanner è ampiamente utilizzata per analizzare il testo alla ricerca di stringhe e tipi primitivi utilizzando un'espressione regolare. Ad esempio, puoi utilizzare la classe Scanner per ottenere input per diversi tipi primitivi come int, long, double, byte, float e short, solo per citarne alcuni.

Puoi dichiarare la classe Java Scanner in questo modo:

Scanner di classe finale pubblica

estende l'Oggetto

implementa Iterator<String>

Se desideri ottenere l'istanza della classe Scanner che legge l'input dell'utente, devi passare il flusso di input (System.in) nel costruttore della classe Scanner, come segue:

Scanner in = nuovo Scanner(“Hello upGrad”);

Leggi: I 6 principali motivi per cui Java è così popolare tra gli sviluppatori

Quali sono i diversi costruttori di classi Scanner?

Ecco i sei costruttori di classi Scanner comunemente usati:

  1. Scanner (Fonte file) – Crea un nuovo Scanner per generare valori scansionati da un particolare file.
  2. Scanner (sorgente InputStream) – Crea un nuovo Scanner per produrre valori scansionati da un flusso di input specificato.
  3. Scanner (fonte leggibile) – Crea un nuovo scanner per fornire i valori scansionati da un'origine specificata.
  4. Scanner (sorgente stringa) – Crea un nuovo scanner per produrre valori scansionati da una stringa particolare.
  5. Scanner (fonte ReadableByteChannel): crea un nuovo scanner per produrre valori scansionati da un canale specificato.
  6. Scanner (origine percorso) – Crea un nuovo scanner per generare valori scansionati da un file specificato.

Quali sono i diversi metodi della classe Scanner?

Proprio come i costruttori di classi Scanner, c'è anche una suite completa di metodi di classe Scanner, ognuno con uno scopo unico. È possibile utilizzare i metodi della classe Scanner per diversi tipi di dati. Di seguito è riportato un elenco dei metodi di classe Scanner più utilizzati:

  1. void [close()] – Questo metodo viene utilizzato per chiudere lo scanner.
  2. pattern [delimiter()] – Questo metodo aiuta a ottenere il Pattern attualmente utilizzato dalla classe Scanner per abbinare i delimitatori.
  3. Stream<MatchResult> [findAll()] – Fornisce un flusso di risultati di corrispondenza che corrispondono alla stringa del modello specificata.
  4. String [findInLine()] – Aiuta a trovare l'occorrenza successiva di un modello creato da una stringa specificata. Questo metodo non considera i delimitatori.
  5. String [nextLine()] – Viene utilizzato per ottenere la stringa di input che è stata ignorata dall'oggetto Scanner.
  6. IOException [ioException()] – Questo metodo aiuta a ottenere l'ultima IOException proiettata dal leggibile dello scanner.
  7. Locale [locale()] – Recupera una Locale della classe Scanner.
  8. MatchResult [match()] – Offre il risultato della corrispondenza dell'ultima operazione di scansione eseguita dallo scanner.
  9. BigDecimal [nextBigDecimal()] – Questo metodo viene utilizzato per scansionare il token successivo dell'input come BigDecimal.
  10. BigInteger [nextBigInteger()] – Questo metodo esegue la scansione del token successivo dell'input come BigInteger.
  11. byte [nextByte()] – Esegue la scansione del token successivo dell'input utente come valore di byte.
  12. double [nextDouble()] – Esegue la scansione del token successivo dell'input dell'utente come valore doppio.
  13. float [nextFloat()] – Questo metodo esegue la scansione del token successivo dell'input come valore float.
  14. int [nextInt()] – Questo metodo viene utilizzato per eseguire la scansione del token successivo dell'input come valore Int.
  15. booleano:
  • [hasNext()] – Questo metodo restituisce true se lo scanner ha un altro token nell'input dell'utente.
  • [hasNextBigDecimal()] – Questo metodo controlla se il token successivo nell'input di Scanner può essere interpretato come BigDecimal usando il metodo nextBigDecimal().
  • [hasNextBoolean()] – Controlla se il token successivo nell'input di Scanner può essere interpretato come un booleano usando il metodo nextBoolean().
  • [hasNextByte()] – Controlla se il token successivo nell'input dello scanner è interpretabile come un byte usando il metodo nextBigDecimal().
  • [hasNextFloat()] – Controlla se il token successivo nell'input dello scanner è interpretabile come un Float usando il metodo nextFloat().
  • [hasNextInt()] – Controlla se il token successivo nell'input dello Scanner è interpretabile come Int usando il metodo nextInt().

Dai un'occhiata: Stipendio per sviluppatori Java in India

Come utilizzare la classe Scanner in Java?

Come accennato in precedenza, l'utilizzo della classe Scanner in Java è abbastanza semplice. Di seguito è riportato un esempio che mostra come implementare la classe Scanner utilizzando il metodo nextLine() :

importa java.util.*;

scanner di classe pubblica Esempio {

public static void main(String args[]){

Scanner in = nuovo Scanner(System.in);

System.out.print(“Inserisci il tuo nome: “);

Nome stringa = in.nextLine();

System.out.println(“Il nome è: ” + nome);

in.close();

}

}

Se esegui questo programma, fornirà il seguente output:

Inserisci il tuo nome: John Hanks

Il nome è: John Hanks

Leggi anche: Cos'è il casting di tipi in Java | Capire il casting dei tipi come principiante

Avvolgendo

Questo articolo copre i fondamenti della classe Scanner in Java. Se acquisisci familiarità con i costrutti ei metodi della classe Scanner, con il tempo e la pratica continua, imparerai come utilizzare la classe Scanner nei programmi Java.

Se sei interessato a saperne di più su Java, lo sviluppo di software full-stack, dai un'occhiata al Diploma PG di upGrad e IIIT-B in Sviluppo software full-stack, progettato per i professionisti che lavorano e offre oltre 500 ore di formazione rigorosa, oltre 9 progetti e incarichi, status di Alumni IIIT-B, progetti pratici pratici e assistenza sul lavoro con le migliori aziende.

Prepararsi per una carriera del futuro

APPRENDIMENTO AFFIDABILE DEL SETTORE - CERTIFICAZIONE RICONOSCIUTA DEL SETTORE.
Ulteriori informazioni @ AGGIORNAMENTO