gpt4 book ai didi

java - 当参数无效时,如何从我的函数打印错误消息?

转载 作者:行者123 更新时间:2023-11-30 09:45:41 25 4
gpt4 key购买 nike

我刚开始学习Java。麻省理工学院有类(class)有an assignment写一个工资计算类。部分任务是:

  • The base pay must not be less than the minimum wage ($8.00 an hour). If it is, print an error.
  • If the number of hours is greater than 60, print an error message.

我写的代码如下:

public class fooCorporation {
private float totalPay;
private float calc;

public float totalPay(double basePay, int hours){

if(hours <= 40){
totalPay = (float) (basePay * hours);
}
else if(hours > 40){
int extraHours = hours - 40;
float payForFortyHours = (float) (basePay * hours);
float payForextraHours = (float) (basePay * 1.5 * extraHours);

totalPay = payForFortyHours + payForextraHours;
}
return totalPay;
}

public static void main(String[] args){
fooCorporation foo = new fooCorporation();
System.out.println("employee 1: " + foo.totalPay(7.50,35));
System.out.println("employee 2: " + foo.totalPay(8.20,47));
System.out.println("employee 3: " + foo.totalPay(10.00,73));
}
}

我面临的问题是如何在不满足某些条件时从函数 totalPay() 打印错误消息。上面的逻辑可以换个方式写吗?

最佳答案

totalPay() 方法看起来不错。您现在可以做的是添加另一种处理所有打印的方法。下面是一些显示总体思路的代码。我在那里留下了空白供您填写。

public void printPay(int employeeNum, double basePay, int hours) {
if (...) {
System.out.println("error");
}
else if (...) {
System.out.println("different error");
}
else {
System.out.println("employee X: " + totalPay(...));
}
}

public static void main(String[] args){
fooCorporation foo = new fooCorporation();

printPay(1, 7.50, 35);
printPay(2, 8.20, 47);
printPay(3, 10.00, 73);
}

使用您已经编写的 totalPay() 函数的好处在于,它将代码组织成漂亮、小巧、易于管理的 block 。一个函数进行计算,另一个函数处理打印。每个功能都有其独特的作用。

关于java - 当参数无效时,如何从我的函数打印错误消息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7479277/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com