Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/363.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在java中返回变量时出错_Java - Fatal编程技术网

在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);