黑马程序员技术交流社区

标题: TreeSet排序问题,求指点 [打印本页]

作者: xzy645181797    时间: 2016-4-22 11:45
标题: TreeSet排序问题,求指点
        TreeSet<Student> ts = new TreeSet<>(new Comparator<Student>() {
                        @Override
                        public int compare(Student s1, Student s2) {
                                int num = s2.getSum() - s1.getSum();        // 比较学生总成绩               
                                return num == 0 ? 1 : num;
                        }
                });
当TreeSet集合中传入学生对象 然后按照 学生对象的总分排序 当我把学生成绩定义成int类型的时候 上面的比较器没问题 但是如果我把学生成绩都定义成float 那s2.getSum() - s1.getSum(); 这一步就不能用int 接收 而该用float。那么问题来了
  方法的返回值要是一个int数 我需要强转s2.getSum() - s1.getSum(),把float 转成int 而在转换过程中 很有可能把0.5这个值弄掉了 也就是当学生总成绩只差0.5分的时候 比较不出来 请教一下 这个问题该怎么解决





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2