我正在解决这个问题,以计算面积的答案为double和int.it没有工作,代码有什么问题?
我尝试在内部包含双半径和内半径,它显示不能应用于给定的类型。
public static void main(String args[]){
for (int radius = 0; radius < 5 ; radius++)
PrintArea(radius);
for (double radius = 0; radius < 2.6 ; radius+= 0.5)
PrintArea(radius);
}
public static void PrintArea(int radius,double radius){
double area=3.142*radius*radius;
System.out.println(area);
}
我希望它可以计算并显示双重答案,但它显示错误。
有一点,你不应该为函数的两个参数使用相同的名称。
所以PrintArea(int radius, double radius)
不正确,可能是你得到的错误之一。
另一个是,当你需要两个参数时,你只用一个参数调用PrintArea。
将参数重命名为int r1和double r2,如下所示:
public static void PrintArea(int r1,double r2){
double area=3.142*radius*radius;
System.out.println(area);
}
或者使用只有一个double参数的PrintArea:
public static void PrintArea(double radius){
double area=3.142*radius*radius;
System.out.println(area);
}
您的代码存在某些问题,您的printArea函数接受两个参数,但您在调用函数时只发送一个参数。您的printArea函数只需要一个参数radius
(不需要两个参数)。另一个问题是在printArea函数中,参数的data type
是int
类型。因此,当您使用int
以外的其他参数调用此函数时,它将抛出错误,因为您在第二个printArea
中调用double
类型的参数for loop
函数。
有一些事情可以清理干净。首先,为什么PrintArea
函数需要2个参数?你只用一个叫它,而且一般来说,我们不需要两条信息来获得一个圆的区域。所以我猜你只想要一个参数。
public static void PrintArea(double radius){
double area=3.142*radius*radius;
System.out.println(area);
}
哪个适用于int
和double
类型。通常我们也在Java中使用camelCase,这意味着对于像“PrintArea”这样由多个单词组成的方法,第一个单词以小写字母开头,之后的每个其他单词都以大写字母开头。