我有这个问题需要解决,我做了一个方法来检查汽车的 parking 时间是否过期,这是代码
private boolean isParkingTimeExpired(ParkedCar car, ParkingMeter meter) {
if(car.getNumberOfMinutesParked() > meter.getNumberOfPurchasedMinutes()) {
return true;
} else {
return false;
}
}
private double calculateFine(ParkedCar car, ParkingMeter meter) {
double totalFine = 0;
if(isParkingTimeExpired() == true) {
totalFine = 20;
}
}
我被告知要制定一个方法来检查 parking 时间是否已过期,如果已过期,则计算每小时 20 美元的罚款,每隔一小时另加 20 美元的罚款。现在有两件事,当我尝试调用方法 isParkingTimeExpired 来检查时间是否已过期时,它给我一个错误,指出方法无法应用于给定类型,未找到参数,原因:实际参数和形式参数的长度不同。为什么会这样?我没有取得太大进展,因为我迷失了试图弄清楚计算的方法以及为什么我不能调用以前的方法。如有任何帮助,我们将不胜感激!
最佳答案
问题是您正在调用 isParkingTimeExpired()
但没有在第二个 if 语句中向其传递任何参数。
在 isParkingTimeExpired
的方法签名中,它需要一个 ParkedCar 对象和 ParkingMeter 对象(见下文)。
private boolean isParkingTimeExpired(ParkedCar 汽车, ParkingMeter 计费器){
为了正确调用它,您必须向其传递所需的参数,如下所示:isParkingTimeExpired(car,meter);
关于java - 计算罚款和附加文件java方法错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60661303/