- Code: Select all
import java.io.*;
/** Codifica metodi statici di lettura da tastiera
* Legge Stringhe, int, double. */
public class Tastiera {
/** @return Una stringa acquisita da Tastiera */
public static String readString() {
StringBuffer Sb=null;
try {
Sb=new StringBuffer();
Reader in=new InputStreamReader(System.in);
BufferedReader Br=new BufferedReader(in);
Sb=Sb.append(Br.readLine());
} catch (IOException iex) {}
return ""+Sb;
}
/** @return un intero acquisito da Tastiera */
public static int readInt() {
int ris=0;boolean ok=true;
String Sb="";
do {
Sb=readString();
try {
ok=true;
ris=Integer.parseInt(Sb);
} catch (NumberFormatException ex) {
System.out.println("immettere un intero!");
ok=false;
}
} while (!ok);
return ris;
}
/** @return un decimale di tipo double acquisito da Tastiera */
public static double readDouble() {
double ris=0;boolean ok=true;
String Sb="";
do {
Sb=readString();
try {
ok=true;
ris=Double.parseDouble(Sb);
} catch (NumberFormatException ex) {
System.out.println("immettere un numero!");
ok=false;
}
} while (!ok);
return ris;
}
} // END Tastiera
Il seguente listato permette di trasformare il buffer della tastiera in una string, int o double. Il vantaggio è che automaticamente vi casta il valore da string a int o double. Gestisce pure le eccezioni. Per utilizzarla fare tipo:
- Code: Select all
...
int i=Tastiera.readInt();
double d=Tastiera.readDouble();
String s=Tastiera.readString();
...



