使用Java时的字符通配符if和else if语句

时间:2013-06-20 05:07:33

标签: java eclipse if-statement printf equals

我正在建立酒店发票申请时正在做一项任务,我必须向用户询问代客停车的客户注册号码。 如果输入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,这是我的第一个任务,所以我很感激任何人都可以通过本节给我的任何帮助。我只是拔出我的头发!

专利

5 个答案:

答案 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
   }