用switch语句替换if / else

时间:2016-09-29 10:13:28

标签: java

我们的老师要求我们创建一个关于所给出情况的java程序,这是每小时的工资率使用if / else这是我出来的,我很高兴(我只是一个初学者)。然后下一条指令是替换if / else和switch语句。他还没有讨论过switch语句。我试着搜索它们,但我无法理解。请帮忙。非常感激。

这是确切的指示: 1.使用if / else构造编写一个程序,根据工作小时数计算人员工资。请注意ff:支付率为每小时35菲律宾比索。 40小时后工作的任何小时数按正常小时费率的1.5倍支付。计算并显示正常工资,加班工资和总工资。 2.通过用switch语句替换if / else构造来修改以前的工作。

"IssueDetail":"IQR: ON THE FORM YOU MARKED YES TO THE FOLLOWING QUESTION: 
Anything preventing you from completing the inspection? YOU NEED TO MARK \"NO\" 
ON THIS PART. FURTHER DOWN THERE IS A QUESTION THAT STATES : Do you have interior 
access to complete the inspection? THIS IS WHERE YOU ARE GOING TO CHECK \"NO\" 
AND UPLOAD THE PHOTO. PLEASE COMPLETE THIS ON THE FORM AND FOLLOW THE REST OF 
THE PROMPTS TO COMPLETE THE FULL EXTERIOR INSPECTION. IF YOU HAVE ANY QUESTIONS 
PLEASE CONTACT YOUR VC. THANK YOU! ","PhotoIssue":true,"FormIssue":true,
"SendEmail":true

3 个答案:

答案 0 :(得分:2)

我写下这个可能会说明,但我认为你的问题需要重新审视。

1

通过这种方式,您可以描述任何数字(整数)的情况并切换它们。

答案 1 :(得分:1)

除了在Java中你不能直接定义切换范围(看看这个QA:In Java,Using switch statement with a range of value in each case?),在这个特定的情况下,你可以尝试做这样的技巧,只是为了向你的老师展示,你明白switch运算符:

switch((int)(hours/40)) {
   case 0: case 1: {
     System.out.println("Your pay rate for the day is Php "+hours * Prph); 
     break; 
   }
   default: {
      double Ovtime= hours - 40;
      double NPay= hours * Prph;
      // other stuff
   }
}

答案 2 :(得分:1)

String TimeUsed = (hours<=40)?"Normal":"Overtime";
switch(TimeUsed)
{
case "Normal":
// 35 to pay 
break;

case "Overtime":
// 1.5 times of 35  to pay
break;

}

在您的情况下,您可以尝试stringintcharEnum来练习切换案例