如何在java中计算基于某个值的对象列表的百分比

如何在java中计算基于某个值的对象列表的百分比,java,list,collections,Java,List,Collections,我在java集合中有一个公文包对象列表。此公文包对象有一个名为scoringRule的属性。我想计算每种类型的scoringRule列表中存在的公文包对象的百分比。事实上,我只有两种不同的评分规则。scoringRUle属性可以是“single”或“double”。我该怎么做 Class Portfolio{ private String name; private String type; private String scoringRule; } List<Portfolio>

我在java集合中有一个公文包对象列表。此公文包对象有一个名为scoringRule的属性。我想计算每种类型的scoringRule列表中存在的公文包对象的百分比。事实上,我只有两种不同的评分规则。scoringRUle属性可以是“single”或“double”。我该怎么做

Class Portfolio{
private String name;
private String type;
private String scoringRule;
}

 List<Portfolio> portfolios = new ArrayList<Portfolio>();
课程组合{
私有字符串名称;
私有字符串类型;
私有字符串蔑视规则;
}
列表公文包=新的ArrayList();
这是您的解决方案

    double single = 0;
    double doublee = 0;
    for (Portfolio pobj : portfolios) {
        if(pobj.scoringRule.equals("single"))
            single++;
        else
            doublee++;
    }
    System.out.println("single Percentage : " +(single / list.size() )*100);
    System.out.println("doublee Percentage : " + (doublee / list.size())*100);

Map
可用于维护每个评分规则的出现次数。然后将计数除以总数。实际上,我的列表中已经填充了投资组合。我的最终需求是基于计算出的百分比,我想根据这个百分比从列表中检索一堆元素。因此,例如,如果我的列表中有50个元素,其中40%为单分数,60%为双分数,那么我希望每次从该列表中检索10个元素,每次检索5次,这是百分比的比例。即4个单分数和6个双分数。是的,但想法是扫描现有的投资组合列表,并从中创建
scoringRule
计数(在你建立投资组合列表时,要么计算评分规则;无论哪种方式,都是相同的想法)。谢谢。现在我如何每次从列表中检索10个元素,它们是这个百分比的比例?