PDA

View Full Version : [java semplice] come faccio a prendere da input un valore?


giova22
30-05-2005, 18:54
Ciao

Come faccio a prendere da input un valore?

Con il C era scanf ma con java come si fa?

DarkRevenge
30-05-2005, 20:02
Ciao

Come faccio a prendere da input un valore?

Con il C era scanf ma con java come si fa?

Allora, in Java per leggere un dato in input devi prima dichiarare un oggetto di tipo InputStreamReader (lettore del flusso di input):

InputStreamReader In = new InputStreamReader(System.in);

Dopodichè creerai un'instanza della classe BufferedReader (lettore buffer) passandogli l'instanza di InputStreamReader appena creata:

BufferedReader myInput = new BufferedReader(In);

Infine potrai utilizzare il metodo readLine() della classe BufferedReader per leggere una stringa da tastiera:

String stringa = new String();
stringa = myInput.readLine();

Se invece non vuoi leggere una stringa ma un dato di tipo diverso, dovrai usare un casting esplicito, ad esempio per interi:

int num;
num = Integer.parseInt(myInput.readLine());

Ricorda anche che (se non sbaglio) in Java è sempre obbligatorio gestire le eccezioni quando si effettua un input, quindi:

try
{
stringa = myInput.readLine();
}
catch(Exception e)
{
System.out.println("Errore: " + e);
System.exit(-1);
}

Spero di essere stato abbastanza chiaro ;)

Edit: Dimenticavo... ovviamente dovrai prima includere le classi utilizzate nel progetto, che si trovano all'interno del package java.io:

import java.io.InputStreamReader;
import java.io.BufferedReader;

giova22
31-05-2005, 06:35
grazie mille. Provo subito