I am beginner in Java, and I was reading the topic of giving values to variables through the readLine()
method from the keyboard. The program for that is given in the book is as follows:
import java.io.DataInputStream
class Reading
{
public static void main(String args[])
{
DataInputStream in = new DataInputStream(System.in);
int intnumber=0;
float floatnumber=0.0f;
try {
system.out.println("enter an integer: ");
intnumber = Integer.parseInt(in.readline());
system.out.println("enter a float number: ");
floatnumber = Float.valueOf(in.readline()).floatvalue();
}
// Rest of code
I want to ask the following questions:
What is done in the following statement?
DataInputStream in = new DataInputStream(System.in);
If in
is an object of DataInputStream
then what is new and what do the statement on the right-hand side of above statement do?
Why have different methods been used for putting the integer value into intnumber and float value into floatnumber?
I advise you to go with Scanner
instead of DataInputStream
. Scanner
is specifically designed for this purpose and introduced in Java 5. See the following links to know how to use Scanner
.
Example
Scanner s = new Scanner(System.in);
System.out.println(s.nextInt());
System.out.println(s.nextInt());
System.out.println(s.next());
System.out.println(s.next());