以下代码导致异常,我不完全确定为什么,任何想法?
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at Circle.CircleApp.main
class CircleApp {
public static void main(String[] args) {
double rd = Double.parseDouble(args[0]);
System.out.println("Circle radius = " + rd);
Circle circle1 = new Circle(rd);
double cir = circle1.calCircumference();
double area = circle1.calArea();
System.out.println("Circumference = " + cir);
System.out.println("Area = " + area);
}
}
class Circle {
private double r;
Circle(double rd) {
throw new UnsupportedOperationException("Not supported yet.");
}
public void Circle(double r) {
}
double calCircumference() {
return 2 * Math.PI * r;
}
public double calArea() {
return Math.PI * r * r;
}
}
答案 0 :(得分:0)
您似乎缺乏对Java的超级基本理解。这里真正的答案是:退一步,做更多的学习。
但是,让我们提供一些细节:
关键是:你的代码希望找到一个双号,所以你可以简单地传递任何类型的数字来看看会发生什么。
会发生什么:另一个例外,因为
throw new UnsupportedOperationException("Not supported yet.");
但是你的代码正在调用那个方法。所以,你需要:
public class Circle {
private double r;
public Circle(double r) {
this.r = r;
}
然后:这里:
public void Circle(double r) {
}
绝对是胡说八道。这甚至都没有编译。
答案 1 :(得分:0)
如果从命令行运行程序,请使用以下内容:
stargazer(did.student,student.control.kmt,student.control.neu,student.control.dpp,header = FALSE,
title="DD Model",
covariate.labels = c("Treatment","group","Treatment*group"),
dep.var.labels = "attitude",
column.labels = c("","party1","Independent","party2"),
label = "DiD-students")
例如:
java CircleApp <double number>
如果使用ide,则应配置运行设置。必须有一个名为程序参数的字段或类似的东西。
答案 2 :(得分:0)
使用它来编译代码:
javac CircleApp.java
java CircleApp 10.0
10.0可以替换为您自己的任何双号