如何转换java中的分钟百分比

时间:2018-03-13 09:31:22

标签: java android

我想计算java中的分钟百分比。例如:30秒内3分钟的10%。

以下是我的代码。我有一个变量t,它有几分钟的时间。我想计算10%的时间t并将其转换为毫秒。我怎样才能做到这一点? assmt_time10per被错误地设置为0

int t = 3; // TIME IN MINUTES
long assmt_time = TimeUnit.MINUTES.toMillis(t);
long assmt_time10per = (t * 10) / 100;

2 个答案:

答案 0 :(得分:4)

对于10%,将您的时间换算为毫秒,然后除以10.

您的错误在这里(您以分钟为单位划分时间)

assmt_time10per = (t * 10) / 100;

它应该是(你将你刚刚计算的时间除以毫秒)

assmt_time10per = (assmt_time * 10) / 100;

此外,当你划分2个整数时,你得到一个int作为结果,这里3乘10是0.3,它返回0.如果你想要0.3,你需要使用双精度并设置为双精度,即{{1 }},这会将double d = (double)t / 10d;设置为d

以下是x百分比的工作代码

0.3

输出int x = 10; // desired percentage int t = 3; // time in minutes long assmt_time = TimeUnit.MINUTES.toMillis(t); long assmt_time10per = (assmt_time * x) / 100; System.out.println(assmt_time10per);

答案 1 :(得分:0)

我想也许你在必要时让它变得更加复杂。

double percent=10;
int tm = 3;
double seconds = (tm * 60) / percent;

这将为您提供以秒为单位的百分比。