我如何制作一种方法来计算从 4 种以上的方法中获取变量来进行计算?

How do I make one method that does calculations take variables from 4+ methods to do the calculations with?

  import java.util.Scanner;

public class ThreeFiveRevised
{

  public static final double OVERTIME_PAY_RATE = 1.5;
  public static final double REGULAR_PAY_RATE = 1.0;

  public static void main(String[] args)
  {

    grabHourlyWages();
    calculateMondayPay();
    calculateTuesdayPay();
    calculateWedneimport java.util.Scanner;

public class ThreeFiveRevised
{

  public static final double OVERTIME_PAY_RATE = 1.5;
  public static final double REGULAR_PAY_RATE = 1.0;

  public static void main(String[] args)
  {

    grabHourlyWages();
    calculateMondayPay();
    calculateTuesdayPay();
    calculateWednesdayPay();
    calculateThursdayPay();
    calculateFridayPay();
    calculateTotalPay();

  }

  public static double grabHourlyWages()
  {

    Scanner reader = new Scanner(System.in);
    System.out.println("Hourly wage");
    double hourlyWage = reader.nextDouble();
    double overtimeWage = hourlyWage * 1.5;

    calculateMondayPay();
    calculateTuesdayPay();
    calculateWednesdayPay();
    calculateThursdayPay();
    calculateFridayPay();

    return hourlyWage;

  }

  public static double calculateMondayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Monday");
    double regularMonHours = reader.nextDouble();
    System.out.println("Overtime hours on Monday");
    double overtimeMonHours = reader.nextDouble();

    double mondayPay =
      (hourlyWage * regularMonHours) + (overtimeWage * overtimeMonHours);

    return mondayPay;

  }

  public static double calculateTuesdayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Tuesday");
    double regularTuesHours = reader.nextDouble();
    System.out.println("Overtime hours on Tuesday");
    double overtimeTuesHours = reader.nextDouble();

    double tuesdayPay =
      (hourlyWage * regularTuesHours) + (overtimeWage * overtimeTuesHours);

    return tuesdayPay;

  }

  public static double calculateWednesdayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Wednesday");
    double regularWedHours = reader.nextDouble();
    System.out.println("Overtime hours on Wednesday");
    double overtimeWedHours = reader.nextDouble();

    double wednesdayPay =
      (hourlyWage * regularWedHours) + (overtimeWage * overtimeWedHours);

    return wednesdayPay;

  }

  public static double calculateThursdayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Thursday");
    double regularThursHours = reader.nextDouble();
    System.out.println("Overtime hours on Thursday");
    double overtimeThursHours = reader.nextDouble();

    double thursdayPay =
      (hourlyWage * regularThursHours) + (overtimeWage * overtimeThursHours);

    return thursdayPay;

  }

  public static double calculateFridayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Friday");
    double regularFriHours = reader.nextDouble();
    System.out.println("Overtime hours on Friday");
    double overtimeFriHours = reader.nextDouble();

    double fridayPay =
      (hourlyWage * regularFriHours) + (overtimeWage * overtimeFriHours);
    return fridayPay;

  }

  public static double calculateTotalPay()
  {

    double mondayPay = calculateMondayPay();
    double tuesdayPay = calculateTuesdayPay();
    double wednesdayPay = calculateWednesdayPay();
    double thursdayPay = calculateThursdayPay();
    double fridayPay = calculateFridayPay();

    double TotalPay =
      mondayPay + tuesdayPay + wednesdayPay + thursdayPay + fridayPay;

    return TotalPay;

  }

}
sdayPay();
    calculateThursdayPay();
    calculateFridayPay();
    calculateTotalPay();

  }

  public static double grabHourlyWages()
  {

    Scanner reader = new Scanner(System.in);
    System.out.println("Hourly wage");
    double hourlyWage = reader.nextDouble();
    double overtimeWage = hourlyWage * 1.5;

    calculateMondayPay();
    calculateTuesdayPay();
    calculateWednesdayPay();
    calculateThursdayPay();
    calculateFridayPay();

    return hourlyWage;

  }

  public static double calculateMondayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Monday");
    double regularMonHours = reader.nextDouble();
    System.out.println("Overtime hours on Monday");
    double overtimeMonHours = reader.nextDouble();

    double mondayPay =
      (hourlyWage * regularMonHours) + (overtimeWage * overtimeMonHours);

    return mondayPay;

  }

  public static double calculateTuesdayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Tuesday");
    double regularTuesHours = reader.nextDouble();
    System.out.println("Overtime hours on Tuesday");
    double overtimeTuesHours = reader.nextDouble();

    double tuesdayPay =
      (hourlyWage * regularTuesHours) + (overtimeWage * overtimeTuesHours);

    return tuesdayPay;

  }

  public static double calculateWednesdayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Wednesday");
    double regularWedHours = reader.nextDouble();
    System.out.println("Overtime hours on Wednesday");
    double overtimeWedHours = reader.nextDouble();

    double wednesdayPay =
      (hourlyWage * regularWedHours) + (overtimeWage * overtimeWedHours);

    return wednesdayPay;

  }

  public static double calculateThursdayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Thursday");
    double regularThursHours = reader.nextDouble();
    System.out.println("Overtime hours on Thursday");
    double overtimeThursHours = reader.nextDouble();

    double thursdayPay =
      (hourlyWage * regularThursHours) + (overtimeWage * overtimeThursHours);

    return thursdayPay;

  }

  public static double calculateFridayPay()
  {

    double hourlyWage = grabHourlyWages();
    double overtimeWage = grabHourlyWages();

    Scanner reader = new Scanner(System.in);
    System.out.println("Regular hours on Friday");
    double regularFriHours = reader.nextDouble();
    System.out.println("Overtime hours on Friday");
    double overtimeFriHours = reader.nextDouble();

    double fridayPay =
      (hourlyWage * regularFriHours) + (overtimeWage * overtimeFriHours);
    return fridayPay;

  }

  public static double calculateTotalPay()
  {

    double mondayPay = calculateMondayPay();
    double tuesdayPay = calculateTuesdayPay();
    double wednesdayPay = calculateWednesdayPay();
    double thursdayPay = calculateThursdayPay();
    double fridayPay = calculateFridayPay();

    double TotalPay =
      mondayPay + tuesdayPay + wednesdayPay + thursdayPay + fridayPay;

    return TotalPay;

  }

}

我的 class 任务是获取用户的小时工资、周一至周五每一天的正常工作时间和加班时间。然后计算总工资。他们只是引入了方法,所以虽然你可以在main方法中这样做,但我的老师特别告诉我们,我们需要在各自的方法中对每一天进行计算,并且只使用main方法作为调用其他方法的地方,而不是用它来实际做任何计算。

我停下来了,因为我不确定从现在开始该做什么。我为工作周的每一天创建了五种方法,并创建了计算方法。问题是,我该如何设置方法?我做到了

calculateTotalPay(mondayPay, tuesdayPay, wednesdayPay, thursdayPay, fridayPay)

但是我无法从五种方法中的每一种发送信息,因为当我说到 mondayPay 方法时,我不能只发送一个参数,因为 calculateTOtalPay 方法需要 5 个参数,而且我不能发送分开讨论,因为我不知道怎么做。求助..?

对 java 很陌生,如果我的问题很愚蠢,我很抱歉,它没有作为建议答案出现的唯一原因可能是我不知道如何表达这个问题。

很简单:你所有的方法都是无效的。

把它们变成return它们的计算结果!然后调用这些方法的方法有一个很好和干净的方法来获取所述 returned 结果。

所以:将return类型改为合适的类型(可能是double),并在每个方法中添加一个return语句。

double someResult = callMyMethod();

就是下一步了。