分区不使用数组长度JAVA

coi*_*ird 1 java arrays debugging

我试图将两个数字除以得到一个百分比,然后打印出来.这是相关的方法:

public void process_winner(String candidates[], int votes[])
{
   double percent = (mostVotes / votes.length) * 100;
   if (mostVotes > votes.length / 2)
      System.out.println("Winner: " + candidates[mostVotesIndex] + "(" + percent + "%)");
   else
      System.out.println("None (no majority)");
   System.out.println("");
}
Run Code Online (Sandbox Code Playgroud)

问题是:

double percent = mostVotes / votes.length;
Run Code Online (Sandbox Code Playgroud)

mostVotesint,值为6,votes.length是10.我使用调试器验证了这一点.

当我的百分比变量显示为60.0时,它显示的值为0.0

Ram*_*oza 5

您需要转换double或更改操作顺序.

做这个:

double percent = (mostVotes * 100 ) / votes.length;
Run Code Online (Sandbox Code Playgroud)