commandLineInterface

leggere e scrivere dati da console

input

Abbiamo già visto come si fa l'output (scrivere un messaggio) nel capitolo precedente, per l'input (leggere una informazione) ci aiuta un oggetto chiamato Scanner che permette di leggere direttamente un testo o un numero da console.

Quello qui sotto è un programma che chiede il nome di un utente e poi lo saluta:


import java.util.Scanner;
public class SalutaConsole {   
    public static void main(String[] args){
        Scanner tastiera = new Scanner(System.in);
        String utente;
        System.out.print("Come ti chiami? ");
        utente = tastiera.nextLine();
        System.out.println("Signor " + utente + " Le auguro buona giornata!");
        tastiera.close();
    }
}

Quello che succede nel terminale (evidenziato l'input inserito dall'utente) è quello che si vede qui sotto:


Come ti chiami? Giovanni
Signor Giovanni Le auguro buona giornata!

Con l'oggetto Scanner è possibile leggere anche altri tipi dati oltre ai testi: l'esempio qui sotto serve per calcolare l'area del quadrato e legge dei numeri interi usando nextInt(), è in maniera analoga possibile usare anche nextDouble per leggere i numeri decimali.


import java.util.Scanner;

public class Quadrato {   
    public static void main(String[] args){
        Scanner tastiera = new Scanner(System.in);
        int lato;
        System.out.print("Misura del lato? ");
        lato = tastiera.nextInt();

        int area = lato * lato;
        System.out.println("L'are del quadrato è "+area);
        tastiera.close();
    }
}

È possibile trovare ulteriori informazioni sull'oggetto Scanner su tanti siti tra cui: w3schools.com, LabSquare.it oltre che sul manuale.