我正在建立酒店发票申请时正在做一项任务,我必须向用户询问代客停车的客户注册号码。 如果输入NOTHING,则假定不需要代客停车服务,但如果输入了SOMETHING,则必须在显示的发票中添加$ 50.00费用。 我到目前为止的代码如下所示,我只想弄清楚如何实现这一目标。
if(vehiclereg.equals("SOMETHING")) {
valetparkingsurcharge = 50; // Calculate Valet Parking Surcharge
System.out.printf("\n%-50s %-100s\n", "Valet Parking:", "Y");
System.out.printf("%-50s %-5s %.2f\n", "Valet Parking Surcharge:", "$", valetparkingsurcharge + " vehiclereg");
}
else if (vehiclereg.equals("NOTHING")) {
System.out.printf("\n%-50s %-100s\n", "Valet Parking Surcharge:", "N");
}
我已经在代码中删除了SOMETHING和NOTHING来表示我需要这两个函数的位置,这样它就能让所有其他人更清楚。 我之前在赋值中使用了IF语句,但它有一个YES或NO输入,所以我想出了如何编写它。上面部分的问题是它必须有任何输入或NO输入指示程序怎么做。
请注意,valetparkingsurcharge设置为double,并且vehiclereg设置为字符串,并且已输入数据(表示需要服务)或未输入数据(表示不需要服务)该计划。
我刚刚开始使用Java,这是我的第一个任务,所以我很感激任何人都可以通过本节给我的任何帮助。我只是拔出我的头发!
专利
答案 0 :(得分:2)
您只需检查null&输入长度
if (vehiclereg != null && vehiclereg.length() > 0) {
// charge valet parking
} else {
// do not charge
}
或者,对于更复杂的检查,请参阅Java Regular Expression
答案 1 :(得分:2)
String.isEmpty
将检查字符串是否为空。
另外,您也可以检查null
答案 2 :(得分:1)
您可以检查String
的长度
if(vehiclereg != null && vehiclereg.trim().length() > 0) {
valetparkingsurcharge = 50; // Calculate Valet Parking Surcharge
System.out.printf("\n%-50s %-100s\n", "Valet Parking:", "Y");
System.out.printf("%-50s %-5s %.2f\n", "Valet Parking Surcharge:", "$", valetparkingsurcharge + " vehiclereg");
}
else { // Nothing...
System.out.printf("\n%-50s %-100s\n", "Valet Parking Surcharge:", "N");
}
答案 3 :(得分:0)
可以通过true / false语句检查它。
答案 4 :(得分:0)
您可以通过添加其他检查器来进一步检查
if (vehiclereg != null > vehiclereg.length() > 0) { //prevent null pointer
// charge valet parking (SOMETHING or NOTHING or whatever value)
} else if(vehiclereg != null && "".equals(vehiclereg)){
//if user enters empty strings, this can happen
}else {
// default operation if conditions above are not satisfied
}