提问者:小点点

如何用物体进行Java穿刺术


当我执行此操作时:

int wr=Math.round(league.getWins()/(league.getWins()+league.getLoss())*100);

结果我得到0,但是如果我用另一种方法:

    float total = league.getWins()+league.getLosses();
    int wins = league.getWins();
    int wr = Math.round(wins/total*100);

结果我得了49分。 这是什么原因造成的呢?


共1个答案

匿名用户

可能是league.getWins()是一个int,(league.getWins()+league.getLoss())也是一个int,所以当Java试图用int除以int时,它会自动将结果四舍五入,所以如果结果是0.49,四舍五入是0,然后是0*100=0。

在后一种情况下,您将total声明为浮点数,因此当Java执行winds/total时,它不会对结果进行四舍五入,因此您得到0.49*100=49