【发布时间】:2015-10-09 05:27:06
【问题描述】:
我目前正在开发一个基于 java 的应用程序。我有一个名为Passenger 的类,它拥有一个名为getCheckedBaggage() 的服务,它查看数据文件并查看使用该服务找到客户的次数。我还有另一个名为 Invoice 的类,您可能认为它会打印出大量客户的订单。我目前正在研究一种名为getCheckedBaggageFee() 的方法,该方法最终将返回服务成本的双倍。
每件行李的费用为 25。每增加一件行李,费用为 35.00。所以算法应该类似于
x = 25 + 35(正在检查其他包)
我知道为了得到我想要的,代码应该如下所示:
public double getCheckedBaggageFee(Passenger p){
double baggage = 0;
if(p.contains(checkedBaggage)++){
baggage = 25 + 35(++);
}else{
baggage = 25;
}
return baggage;
}
我的问题是,我知道代码不应该像上面那样,它应该使用某种计数器方法,那么我需要添加什么才能进行计数?
【问题讨论】:
-
你的问题不是很清楚。您的乘客类是什么样的(“包含”是做什么的?)?什么是“托运行李”?为什么是 ++?
-
checkedBaggage是什么以及contains在您的Passenger课程中做什么 -
您说
getCheckedBaggageFee应该确定费用,但为什么您的示例方法称为getCheckedBaggage做其他事情(并且应该在getCheckedBaggageFee[提示;)] 中使用)? -
checkedBaggage in the Passenger 是一个对象,它保存了在数据文件中找到服务的次数(在上面的问题中解释),乘客中的包含基本上是说乘客是否有托运行李,那么……这就是它所说的。此外,上面的代码 sn-p 就像一个伪代码。这就是我假设它的样子,但正如那句老话所说,他们给猫剥皮的方法不止一种
-
@Tom 这实际上是我的一个错字。在我的实际代码中,它被称为 getCheckedBaggageFee,但我在提出问题时一定忘记了费用部分。感谢您的收看,我很感激