Java 我能';在继续下一个语句之前,我不明白为什么我的部分程序会循环4次
结果: 输入矩形的宽度:3 输入矩形的长度:4 输入矩形的宽度:3 输入矩形的长度:4 输入矩形的宽度:3 输入矩形的长度:4 输入矩形的宽度:3 输入矩形的长度:4 宽度:3.0 长度:4.0 面积:12.0Java 我能';在继续下一个语句之前,我不明白为什么我的部分程序会循环4次,java,methods,return,arguments,void,Java,Methods,Return,Arguments,Void,结果: 输入矩形的宽度:3 输入矩形的长度:4 输入矩形的宽度:3 输入矩形的长度:4 输入矩形的宽度:3 输入矩形的长度:4 输入矩形的宽度:3 输入矩形的长度:4 宽度:3.0 长度:4.0 面积:12.0 这是因为您调用了四次getWidth()和getLength() 一旦从main, 从getArea一次, 一次从displayData(再次调用getArea) 每次调用getWidth()和getLength()都会从System.in中提示数据。你必须 获取一次长度和宽度并将其存储
这是因为您调用了四次
getWidth()
和getLength()
一旦从main
,
从
getArea
一次,
一次从
displayData
(再次调用getArea
)
每次调用getWidth()
和getLength()
都会从System.in
中提示数据。你必须
尝试仅在main中调用displayData(),并删除其他调用。
问题是displayData()本身会再次调用其他方法。我该怎么做?我试着将它存储在main中,但不知道如何从其他方法调用它。我建议您创建一个单独的类来保存这些值。如果没有,则将它们设置为静态,以便您可以从
显示数据(在主类中)访问
import java.util.Scanner;
public class Main
{
public static void main(String[] args)
{
getWidth();
getLength();
getArea();
displayData();
}
public static double getWidth()
{
System.out.print("Enter the width of the rectangle: ");
Scanner keyboard = new Scanner(System.in);
double width = keyboard.nextDouble();
return width;
}
public static double getLength()
{
System.out.print("Enter the length of the rectangle: ");
Scanner keyboard = new Scanner(System.in);
double length = keyboard.nextDouble();
return length;
}
public static double getArea()
{
double area = getWidth() * getLength();
return area;
}
public static void displayData()
{
System.out.println("Width: " + getWidth() +
"\nLength: " + getLength() +
"\nArea: " + getArea());
}
}