Java 设置小时罚款,直到达到最高罚款
违章停车的第一个小时或不足一个小时的罚款为150.00令吉 每增加一小时或不足一小时加50.00马来西亚令吉 那辆车是非法停放的 最高罚款应为300.00令吉 如果我想将“最高罚款”设置为300,我该怎么办?Java 设置小时罚款,直到达到最高罚款,java,Java,违章停车的第一个小时或不足一个小时的罚款为150.00令吉 每增加一小时或不足一小时加50.00马来西亚令吉 那辆车是非法停放的 最高罚款应为300.00令吉 如果我想将“最高罚款”设置为300,我该怎么办? public class ParkingTicket { private ParkedCar car; private PoliceOfficer police; private ParkingMeter meter; private double fine
public class ParkingTicket {
private ParkedCar car;
private PoliceOfficer police;
private ParkingMeter meter;
private double fine;
private int min;
private double firstfine = 150;
private double hour_fine =50;
private double max_fine = 300;
public ParkingTicket() {
car=null;
police=null;
fine=0;
min=0;
}
public void CalTotalFine() {
int time = car.getParkMin()- meter.getMinutesPurchased();
if(time < 60) {
fine=firstfine;
} else {
fine= firstfine+ (hour_fine*(time/60));
}
}
}
公共类停车场{
私家车;
私人警察;
私家停车收费表;
私人双重罚款;
私用int min;
私人双倍罚款=150;
私人双倍小时罚款=50;
私人双倍最大罚款=300;
公共停车场(){
car=null;
警察=无效;
精细=0;
最小值=0;
}
公众罚款(){
int time=car.getParkMin()-meter.getMinutesPurchased();
如果(时间<60){
罚款=第一罚款;
}否则{
罚款=第一次罚款+(小时罚款*(时间/60));
}
}
}
为确保罚款不会超过最高罚款
,您可以在评估罚款后添加检查,如下所示:
if (fine > max_fine) {
fine = max_fine;
}
然后进一步使用/返回
fine
的值fine
就是您所说的计算值。因此,将其存储为字段是没有意义的
如果您想限制它,那么可以使用Math.min()
方法
public static final double MIN_FINE = 150;
public static final double MAX_FINE = 300;
public static final double HOURLY_RATE = 50;
public double getFine() {
int time = car.getParkMin()- meter.getMinutesPurchased();
double fine = 0;
if(time < 60) {
fine = MIN_FINE;
} else {
fine = MIN_FINE + (time/60)*HOURLY_RATE;
}
// return the smallest of these values
return Math.min(fine, MAX_FINE);
}
public static final double MIN\u FINE=150;
公共静态最终双倍最大罚款=300;
公共静态最终双小时费率=50;
公众罚款{
int time=car.getParkMin()-meter.getMinutesPurchased();
双倍罚款=0;
如果(时间<60){
罚款=最低罚款;
}否则{
罚款=最低罚款+(时间/60)*小时费率;
}
//返回这些值中的最小值
返回Math.min(很好,很好);
}
这是否意味着我在else语句之后再添加一个if???@diu 1997是的,您可以检查。呃。。。。这又是谁的作业@diu_1997-你需要在这里学习。。。不要让别人用勺子喂你答案。阅读答案。理解它。应用知识。可以只使用fine=Math.min(fine,max\u fine)
car=null;警察=无效;精细=最小=0代码>都已经为您完成了,顺便说一下。。。将这些放在构造函数中是多余的