当前位置: 代码迷 >> Java相关 >> 求助:键盘输入的问题
  详细解决方案

求助:键盘输入的问题

热度:143   发布时间:2006-05-11 14:53:00.0

当然啦
你从输入得到的,x,y,z都没有用
那你得到那些数干嘛啊


----------------解决方案--------------------------------------------------------
那怎么改?
----------------解决方案--------------------------------------------------------

晕 自己再看看书吧


----------------解决方案--------------------------------------------------------

我已经尽力了
书上什么都没有啊!
----------------解决方案--------------------------------------------------------
import java.io.*;
import java.lang.Math;
abstract class Area {
public abstract double area();
}
class RectArea extends Area{
double x,y;
public double area() {
double s1;
s1=x*y;
System.out.println("s1="+s1);
return s1;
}
}
class RoundArea extends Area{
double z;
public double area(){
double s2;
s2=Math.PI*z*z;
System.out.println("s2="+s2);
return s2;
}
}
public class Test{
public static void main(String args[]){
RectArea f1=new RectArea();
RoundArea f2=new RoundArea();
double x,y,z;
try{
BufferedReader in= new BufferedReader(new InputStreamReader(System.in));
x=Long.parseLong(in.readLine());
y=Long.parseLong(in.readLine());
z=Long.parseLong(in.readLine());
f1.x = x;
f1.y = y;
f2.z = z;


}
catch(Exception e){
System.out.println("error:"+e.toString());
}
f1.area();
f2.area();
}
}

----------------解决方案--------------------------------------------------------
还得多看看面向对象方面的教程啊
----------------解决方案--------------------------------------------------------

楼上这位同志
加上
f1.x = x;
f1.y = y;
f2.z = z;

这几句之后显是的结果是:
error:java.lang.NumberFormatException: For input string: "2.0,3.0,4.0"
s1=0.0
s2=0.0
怎么回事啊?
我菜鸟一个,如大家觉得我烦,请见谅


----------------解决方案--------------------------------------------------------

当然,你是用Long的,


----------------解决方案--------------------------------------------------------

晕了!
什么用的是Long的?
越搞越糊涂了!
是类型不匹配吗?


----------------解决方案--------------------------------------------------------
我改为Double怎么又错了?
----------------解决方案--------------------------------------------------------