如何使一个计算方法从4个以上的方法中获取变量来进行计算?

问题描述 投票:0回答:1
  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;

  }

}

我上课的任务是获取用户的小时工资,周一至周五每个工作日的正常工作时数和加班时数。然后计算总薪水。他们只是介绍了方法,所以虽然你可以在main方法中做到这一点,但我的老师明确地告诉我们,我们需要在相应的方法中每天进行计算,并且只使用main方法作为调用其他方法的地方,而不是用它来实际进行任何计算。

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

calculateTotalPay(mondayPay,tuesdayPay,Wednesday WednesdayPay,thursdayPay,fridayPay)

但是我不能从五种方法中的每一种发送信息,因为当我说mondayPay方法时,我不能发送一个参数,因为calculateTOtalPay方法需要5个参数,我不能单独发送参数,因为我不知道怎么做。救命..?

非常新的java很抱歉,如果我的问题是愚蠢的,只是因为它没有出现作为建议的答案可能是因为我不知道如何说出问题。

java methods main
1个回答
1
投票

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

更改它们以返回其计算结果!然后调用这些方法的方法有一个很好的,干净的方式来获取返回的结果。

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

double someResult = callMyMethod();

那是下一步。

© www.soinside.com 2019 - 2024. All rights reserved.