是我错还是javac错还是java错
//电费计算
public class df{
public static void main(String args[]){
double a,fee;
System.out.println("本月您家的电度数是:"+args[0]+"度");
a=Double.parseDouble(args[0]);
fee=a*0.15;
}
static void output(double result){
System.out.println("您需缴的电费是:"+result+"元");
}
}
javac df.java可以编译
为什么java df后显示Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at df.main(df.java:5)
搜索更多相关的解决方案:
javac
----------------解决方案--------------------------------------------------------
ArrayIndexOutOfBoundsException这个不是异常类嘛!?
它的意思是说数组下标越界异常!
----------------解决方案--------------------------------------------------------
java df 后没有参数,那么args[0]显然越界了!
----------------解决方案--------------------------------------------------------
那应该如何改呀,望赐教
----------------解决方案--------------------------------------------------------
public class df{
public static void main(String args[]){
if(args.length!=0){//增加一个判断,如果不为空的话,就执行
double a,fee;
System.out.println("本月您家的电度数是:"+args[0]+"度");
a=Double.parseDouble(args[0]);
fee=a*0.15;
}
else
System.out.println("用法:java df 数字 ");
}
static void output(double result){
System.out.println("您需缴的电费是:"+result+"元");//这个函数你定义没有用它
}
}
----------------解决方案--------------------------------------------------------
SORRY,我看不懂
----------------解决方案--------------------------------------------------------
连这个都看不懂的话,就 应该去多看看JAVA基础的东西了
----------------解决方案--------------------------------------------------------
收到,
----------------解决方案--------------------------------------------------------
System.out.println("本月您家的电度数是:"+args[0]+"度");
args[0] 指的是你命令行传过去的参数
先javac编译,之后
java df 8 这里的8作为args[0]传进去
就行了,
java df aaaa 这样你试试,结果会抛出其他的异常,
因此,这类的东西最好做异常处理
ps:也许这就是不建议新手一上来就用IDE的原因吧
[此贴子已经被作者于2006-4-27 22:04:29编辑过]
----------------解决方案--------------------------------------------------------