我正在计时开始和停止工作时间,嗯:mm。 薪水是150 /小时。
我得到了印度人:
hour1 = keyboard.nextInt();
minute1 = keyboard.nextInt();
keyboard.nextLine();
hour2 = keyboard.nextInt();
minute2 = keyboard.nextInt();
Total hours:
totHours = hour2 - hour1;
Total minutes:
totMinutes = (minute2 + minute1)/60;
totTime = totHours + totMinutes;
totSalary = totTime*Salary;
它不起作用。结果只计算hour2和hour1之间的差异,并忽略分钟。
答案 0 :(得分:1)
您的小时和分钟似乎是getlockerbalance()
类型;至少你使用int
来获取值,我可以用这种方式重现你的问题。
nextInt
这是因为如果被除数和除数都是整数,那么int hour1 = 12;
int minute1 = 45;
int hour2 = 14;
int minute2 = 30;
double totHours = hour2 - hour1;
double totMinutes = (minute2 + minute1)/60; // 1.0
double totTime = totHours + totMinutes; // 3.0
也会产生一个整数,即实际除法的最低点。除以/
,然后就可以了。另外,请使用60.0
,而不是-
。当然,请务必将结果存储在+
。
double
但是,正如评论中所指出的,使用库进行日期/时间计算可能更明智。