Proud Japanese
2011-06-13 05:31:33 UTC
Hello,
I am a Java newbie and I am trying to see how to read different types
of console inputs in Java (int, float, string etc.). I have found the
following code snippet at wikianswers (http://wiki.answers.com/Q/
How_do_you_accept_an_integer_or_a_float_or_double_value_as_a_console_input_from_user_in_java_also_you_do_want_to_use_command_line_arguments):
Is this the best way to realize what I am trying to do, or is there a
simpler, less verbose way (similar to the ">>" streaming operator in C+
+)?
Thanks,
Hayato
// ------------ Code snippet begin ------------
// create an BufferedReader from the standard input stream
BufferedReader in = new BufferedReader(new
InputStreamReader(System.in));
String currentLine = "";
// read integers
System.out.print("Input an integer: ");
while (!(currentLine = in.readLine()).equals("")) {
int input = 0;
try {
input = Integer.parseInt(currentLine);
} catch (final NumberFormatException ex) {
System.out.println("That was not an integer.");
}
System.out.println("\tInteger read: " + input);
System.out.print("Input an integer: ");
}
// read floats
System.out.print("Input an float: ");
while (!(currentLine = in.readLine()).equals("")) {
float input = 0.0f;
try {
input = Float.parseFloat(currentLine);
} catch (final NumberFormatException ex) {
System.out.println("That was not an float.");
}
System.out.println("\tFloat read: " + input);
System.out.print("Input an float: ");
}
// read doubles
System.out.print("Input an double: ");
while (!(currentLine = in.readLine()).equals("")) {
double input = 0.0;
try {
input = Double.parseDouble(currentLine);
} catch (final NumberFormatException ex) {
System.out.println("That was not an double.");
}
System.out.println("\tDouble read: " + input);
System.out.print("Input an double: ");
}
// ------------ Code snippet end ------------
I am a Java newbie and I am trying to see how to read different types
of console inputs in Java (int, float, string etc.). I have found the
following code snippet at wikianswers (http://wiki.answers.com/Q/
How_do_you_accept_an_integer_or_a_float_or_double_value_as_a_console_input_from_user_in_java_also_you_do_want_to_use_command_line_arguments):
Is this the best way to realize what I am trying to do, or is there a
simpler, less verbose way (similar to the ">>" streaming operator in C+
+)?
Thanks,
Hayato
// ------------ Code snippet begin ------------
// create an BufferedReader from the standard input stream
BufferedReader in = new BufferedReader(new
InputStreamReader(System.in));
String currentLine = "";
// read integers
System.out.print("Input an integer: ");
while (!(currentLine = in.readLine()).equals("")) {
int input = 0;
try {
input = Integer.parseInt(currentLine);
} catch (final NumberFormatException ex) {
System.out.println("That was not an integer.");
}
System.out.println("\tInteger read: " + input);
System.out.print("Input an integer: ");
}
// read floats
System.out.print("Input an float: ");
while (!(currentLine = in.readLine()).equals("")) {
float input = 0.0f;
try {
input = Float.parseFloat(currentLine);
} catch (final NumberFormatException ex) {
System.out.println("That was not an float.");
}
System.out.println("\tFloat read: " + input);
System.out.print("Input an float: ");
}
// read doubles
System.out.print("Input an double: ");
while (!(currentLine = in.readLine()).equals("")) {
double input = 0.0;
try {
input = Double.parseDouble(currentLine);
} catch (final NumberFormatException ex) {
System.out.println("That was not an double.");
}
System.out.println("\tDouble read: " + input);
System.out.print("Input an double: ");
}
// ------------ Code snippet end ------------