Java 数学给出不同于计算器的答案的方法

Java 数学给出不同于计算器的答案的方法,java,math,percentage,division,integer-division,Java,Math,Percentage,Division,Integer Division,我是java新手,所以请容忍我。我正试图从总的比赛次数中获得胜利的百分比,而我所做的事情却远远不够。我获取百分比的方法如下: public double winPercentage(int wins, int total) { return (wins % total) * 1.00; } 如果我赢了254场比赛中的52场,我的答案是52.0,使用我的计算器,假设赢/总*100,同样的答案是20.47。如果我将模数切换为/I,则始终得到0.0 我尝试了不同的小数位数和运算顺序。我似乎无

我是java新手,所以请容忍我。我正试图从总的比赛次数中获得胜利的百分比,而我所做的事情却远远不够。我获取百分比的方法如下:

public double winPercentage(int wins, int total)
{
    return (wins % total) * 1.00;
}
如果我赢了254场比赛中的52场,我的答案是52.0,使用我的计算器,假设赢/总*100,同样的答案是20.47。如果我将模数切换为/I,则始终得到0.0

我尝试了不同的小数位数和运算顺序。我似乎无法使计算器和方法匹配。

登录百分比wins%total与计算百分比无关

要用Java计算百分比,可以编写

return 100.0 * wins / total;
在这里,100.0具有双重用途:

它将结果重新缩放到百分比; 它将随后的除法转换为浮点除法,如果没有浮点除法,则为整数除法,当wins 要用Java计算百分比,可以编写

return 100.0 * wins / total;
在这里,100.0具有双重用途:

它将结果重新缩放到百分比; 它将随后的除法转换为浮点除法,如果没有浮点除法,则为整数除法,当wins也可能是重复的,*1.00代表什么?那不会有任何影响。你的意思是*100吗?模运算符通过将一个数字除以另一个可能的重复数来计算余数。还有,*1.00代表什么?那不会有任何影响。你是说*100吗?模运算符通过将一个数除以另一个数来计算余数