在java中返回变量时出错
我不确定如何处理此错误:在java中返回变量时出错,java,Java,我不确定如何处理此错误: exit status 1 Main.java:18: error: method area in class Main cannot be applied to given types; String ara = area(); ^ required: double,double found: no arguments reason: actual and formal argument lists differ in le
exit status 1
Main.java:18: error: method area in class Main cannot be applied to given
types;
String ara = area();
^
required: double,double
found: no arguments
reason: actual and formal argument lists differ in length
1 error
我的代码的目的是使用两种方法找到矩形的面积,返回面积变量,并将变量从一个方法传递到下一个方法
import java.util.*;
public class Main {
public static void main(String[] args) {
System.out.println("Enter Length");
Scanner input = new Scanner (System.in);
double L = input.nextDouble();
Scanner input2 = new Scanner (System.in);
System.out.println("Enter Width: ");
double W = input.nextDouble();
String ara = area();
System.out.println(ara);
}
public static String area(double L, double W) {
double total = L*W;
String ara = String.valueOf(total);
return ara;
}
}
提前感谢大家,对整个站点来说都是新的。您需要向area方法传递两个double。换句话说,采取行动 这个 并改为:
String ara = area(L,W);
首先,您需要将两个参数传递给area函数,这两个参数您没有在第行中传递
String ara=area(L,W);
所以这个错误就来了
required: double,double
found: no arguments
reason: actual and formal argument lists differ in length
1 error
这需要两个替身的论点。因此,通过main()传递的实际参数和在函数区域()接收的形式参数之间存在差异
可选:
其次,您可以将函数area()的返回类型更改为double,这样就可以将其直接发送到主函数,并使用double直接打印。代码中的问题是: 你的面积()得到两个参数
public static String area(double L, double W){
//your code
}
但是当调用area()时,没有传递参数
String ara = area();
解决方案是:
String ara = area(L,W);
您需要将两个类型为double的参数传递给area方法。换句话说,拿着这个
String ara = area();
并改为:
String ara = area(arg1, arg2);
你能再解释一下关于这个错误消息你不清楚的地方吗?你可能想让你的代码更容易让你自己和其他人阅读。是的,你缩进代码的方式非常不寻常,其他人也不容易阅读。这与“返回变量”无关。它与向方法提供参数有关。修复了这个问题,它就运行了!非常感谢。
String ara = area(arg1, arg2);