使用一种方法的结果来计算另一种方法的价格

问题描述 投票:-1回答:2

我是初学者。我无法弄清楚究竟我做错了什么。我设法让第一个方法工作正常(calculateArea)但我不明白为什么第二个方法不起作用(找不到区域的符号)

import java.util.Scanner;

public class PaintCalculator
{
   public static void main(String[] args)
   {
      double length;
      double width;

      Scanner keyboard = new Scanner(System.in);

      System.out.print("Enter the length >> ");
      length = keyboard.nextDouble();
      System.out.print("Enter the width >> ");
      width = keyboard.nextDouble();
      keyboard.nextLine();

      calculateArea(length, width);
      calculatePrice(area);
   }

   public static double calculateArea (double length, double width)
   {
     double area;
     area = length * width;
     System.out.println(area);
     return area;

   }

  public static void calculatePrice(double area)
   {
    double gallons = area * 350;
    double price = gallons * 32;
    System.out.println(price);
   }
}

对不起,如果这是一个菜鸟问题

java methods
2个回答
1
投票

你必须将calculateArea(这是区域)的返回值保存为double变量,并将其传递给calculatePrice

 public static void main(String[] args)
  {
  double length;
  double width;

  Scanner keyboard = new Scanner(System.in);

  System.out.print("Enter the length >> ");
  length = keyboard.nextDouble();
  System.out.print("Enter the width >> ");
  width = keyboard.nextDouble();
  keyboard.nextLine();

 double area = calculateArea(length, width);
 calculatePrice(area);
 }

0
投票

这是java如何处理方法中的数据的典型示例。区域变量在calculateArea方法中,您尝试通过main使用它并将其输入计算价格。而是将区域分配给变量并将其传入

{
   public static void main(String[] args)
   {
      double length;
      double width;

      Scanner keyboard = new Scanner(System.in);

      System.out.print("Enter the length >> ");
      length = keyboard.nextDouble();
      System.out.print("Enter the width >> ");
      width = keyboard.nextDouble();
      keyboard.nextLine();

      //calculateArea(length, width);
      int area = calculateArea(length, width);
      calculatePrice(area);
      //or just directly place it in like this
      calculatePrice(calcuateArea(length, width));
   }

   public static double calculateArea (double length, double width)
   {
     double area;
     area = length * width;
     System.out.println(area);
     return area;

   }

  public static void calculatePrice(double area)
   {
    double gallons = area * 350;
    double price = gallons * 32;
    System.out.println(price);
   }
}
© www.soinside.com 2019 - 2024. All rights reserved.