【发布时间】:2017-03-23 00:51:56
【问题描述】:
我目前有 switch 语句,可以根据工人的头衔随机生成薪水。一切正常,但我似乎无法正确截断薪水。
无论如何,我都需要薪水以两位小数结尾。它适用于像“57662.24”这样的薪水,但我也得到像“87756.4”这样的薪水,我需要是“87756.40”
我不确定我做错了什么,所以我希望能得到一些帮助!
// Method to return salary based on rank
private static Double salary(String rank) {
// initialize variables for use in switch statement
double sal = 0;
Random random = new Random();
DecimalFormat df = new DecimalFormat("###.00");
switch (rank) {
case "Assistant":
sal = random.nextDouble() * (80000 - 50000) + 50000;
break;
case "Associate":
sal = random.nextDouble() * (110000 - 60000) + 60000;
break;
case "Full":
sal = random.nextDouble() * (130000 - 75000) + 75000;
break;
}
return sal = Double.valueOf(df.format(sal));
}
【问题讨论】: