向上舍入或向下舍入的向量百分比和整数除法

时间:2015-01-03 11:52:49

标签: java

我有以下代码来获取&#39; set&#39;的百分比例如,如果输入60%,则保留9个“设置”的例子。只要。但是,我需要修改它,好像&gt; 0.5我向上舍入数字但是如果它<0.5我将它向下舍入。例如9.6保留前10个训练样例,而9.4保留前9个例子。

public void proportion(int percentage)
{
    int noOfEx = percentage*set.size()/100; 
    root.keptEx = new Vector(set.subList(0, noOfEx));
}

我试着做

public void proportion(int percentage)
{
    double noOfEx = percentage*set.size()/100; 
    int rounded = (int)Math.round(noOfEx);
    root.keptEx = new Vector(set.subList(0, rounded));
    System.out.println(noOfEx);
}

但是如果set.size是16,我仍然得到9而我需要10

1 个答案:

答案 0 :(得分:0)

使用Math.round

double number = 22.5;
int rounded = (int)Math.round(number);

DEMO