java - 在Java中是否可以将操作添加到开关中?或者什么是最好的编码方式
问题描述
代码要求我提及以下内容:姓名、身份证、状态、小时,然后按到期付款:状态遵循图表 FT - 每小时 345 PT - 每小时 200
我是怎么可能编写这样的代码?
String Name;
String badge number;
int hour;
System.out.print("Enter your first name: ");
Name = keyboard.next( );
System.out.print("Enter your badgenumber: ");
badgenumber = keyboard.next( );
System.out.print("How many hour are you working: ");
hour = keyboard.nextInt();
System.out.println("Choose a Status: FT, PT,");
String Status = keyboard.next();
switch (Status) {
case "FT":
System.out.println("Due : hour * 345 ) ;
break;
case "PT":
System.out.println("Due : hour * 200);
}
帮助:不确定这是否有意义,但我希望当您输入状态时,它会输出 hour * pay per hour 。[如果无法使用 switch,请告诉我哪个是解决问题的更好方法]
解决方案
虽然不是很实用,但我会用 HashMap 抛出另一种方法:
HashMap<String, Integer> wageMultiplier = new HashMap<String, Integer>();
wageMultiplier.put("FT", 345);
wageMultiplier.put("PT", 200);
int hours = 4;
int wage = hours * wageMultiplier.get("FT");