A4453986 2018-08-20 02:25 采纳率: 66.7%
浏览 1166
已采纳

根据学生的总分进行等级比例的划分该如何进行?求解?

根据学生数量,对学生进行等级划分,
(比如:若干学生,先按照总分进行排序,然后从高到低的顺序20%为A,30%为B,40%为C,10%为D的顺序进行划分等)

  • 写回答

5条回答 默认 最新

  • 葫芦胡 2018-08-20 03:23
    关注
                //按成绩降序排序的学生集合
        List<T> studentList = new ArrayList<>();
        //业务具体的学生总数
        int studentTotalCount = 1000;
        //A等级的studentList的最后一个人的下标
        int levelACount = (int)(studentTotalCount*0.2)-1;
        //B等级的studentList的下最后一个人的下标
        int levelBCount = (int)(studentTotalCount*(0.2+0.3))-1;
        //C等级的studentList的下最后一个人的下标
        int levelCCount = (int)(studentTotalCount*(0.2+0.3+0.4))-1;
        //D等级的studentList的下最后一个人的下标
        int levelDCount = studentTotalCount-1;
        //数组下标
        int index = 0;
        for(T t:studentList){
            if(index <=levelACount){
                t.setLevel("A");
            }else if(index <=levelBCount){
                t.setLevel("B"); 
            }else if(index <=levelCCount){
                t.setLevel("C");
            }else {
                t.setLevel("D");
            }
            index++;
        }
        //批量修改设置等级属性
        ......
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?