-
Display program
Hey,
I am trying to have the user input an integer, a float, and a double. For example:
Input the Integer: 7
Input float: 7
Input the double: 66.4
And then display the following output:
THe integer is: 7 The float is: 7.0 The double is: 66.4
My code runs fine, however it only produces the output for an integer, and leaves the float / double as 0.0 :
THe integer is: 7 The float is: 0.0 The double is: 0.0
I have 2 separate files "Show.java" and "UtilShow.java". The code for both of them is below:
Show.java file
Code:
public class Show
{
private int Integer;
private float Float;
private double Double;
public Show (int inTeger )
{
Integer = inTeger;
}
public Show (float fLoat)
{
Float = fLoat;
}
public Show (double douBle)
{
Double = douBle;
}
public void Display()
{
System.out.println("THe integer is: " +Integer + " The float is: " +Float + " The double is: " +Double);
}
}
UtilShow.java file
Code:
import java.io.*;
public class UtilShow{
public static void main(String[] args)
{
try {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
System.out.print("Input the Integer: ");
Show intone = new Show(Integer.parseInt(br.readLine()));
System.out.print("Input float: ");
Show fone = new Show(Float.parseFloat(br.readLine()));
System.out.print("Input the double: ");
Show done = new Show(Double.parseDouble(br.readLine()));
intone.Display();
}
catch(Exception e) {}
}
}
Can anybody please help me out? Thanks alot!
-
Right now you are creating a new instance of the class Show for each variable.
Code:
Show intone = new Show(Integer.parseInt(br.readLine()));
intone.Display();
So you are only displaying intone.
Code:
public Show (int inTeger, double dblVal, float fVal) {..}
-
Code:
import java.io.*;
public class UtilShowRx {
public static void main(String[] args)
{
try {
InputStreamReader isr = new InputStreamReader(System.in);
BufferedReader br = new BufferedReader(isr);
System.out.print("Input the Integer: ");
// Create an instance of class Show and save a reference
// to it. We'll use this reference, this instance variable,
// to call methods in the class.
Show intone = new Show();
// Use this instance variable to set the Integer field
// for/in this instance of the Show class.
intone.Show(Integer.parseInt(br.readLine()));
System.out.print("Input float: ");
// Show fone = new Show(Float.parseFloat(br.readLine()));
// Set the Float field for this instance.
intone.Show(Float.parseFloat(br.readLine()));
System.out.print("Input the double: ");
// Show done = new Show(Double.parseDouble(br.readLine()));
// Set the Double field for this instance of Show.
intone.Show(Double.parseDouble(br.readLine()));
intone.Display();
br.close();
} catch(Exception e) {}
}
}
class Show
{
private int Integer;
private float Float;
private double Double;
// Methods must have a return type in their signature.
// This method does not return a value so its return
// type is "void".
public void Show (int inTeger )
{
Integer = inTeger;
}
public void Show (float fLoat)
{
Float = fLoat;
}
public void Show (double douBle)
{
Double = douBle;
}
public void Display()
{
System.out.println("THe integer is: " + Integer +
" The float is: " + Float +
" The double is: " + Double);
}
}