黑马程序员技术交流社区

标题: 学生类创建5个对象, 属性可为任意值. 编程对这5个对象按. [打印本页]

作者: .....淡定    时间: 2013-9-5 18:59
标题: 学生类创建5个对象, 属性可为任意值. 编程对这5个对象按.
import java.util.Iterator;
import java.util.Set;
import java.util.TreeSet;

public class Test14 {
        public static void main(String[] args) {
                // TODO Auto-generated method stub
                Set<Student> set=new TreeSet<Student>();
                set.add(new Student("tang",70));
                set.add(new Student("li",75));
                set.add(new Student("wang",74));
                set.add(new Student("wu",73));
               
                Iterator<Student> it=set.iterator();
                while(it.hasNext())
                {
                        Student stu=it.next();
                        System.out.println(stu.getName()+"  "+stu.getSum());
                }
//               
//                for(Student stu:set)
//                {
//                        System.out.println(stu.getName()+"  "+stu.getSum());
//                }

        }
       

}
class Student implements Comparable<Student> {
        private String name;
        private int sum;

        public Student() {
                super();
        }

        public Student(String name, int sum) {
                this.name = name;
                this.sum = sum;
        }

        public String getName() {
                return name;
        }

        public void setName(String name) {
                this.name = name;
        }
        public int getSum()
        {
                return sum;
        }
        public void setSum(int sum)
        {
                this.sum=sum;
        }

        @Override
        public int compareTo(Student stu) {
                // TODO Auto-generated method stub
                int tmp = this.sum - this.sum;
                return tmp == 0 ? this.name.compareTo(this.name) : tmp;
        }

}
为什么我打印出只有一个数据。。那个地方出错了。。谢谢



作者: gulup    时间: 2013-9-5 19:14
  1. public int compareTo(Student stu) {
  2.                 // TODO Auto-generated method stub
  3.                 int tmp = this.sum - this.sum;
  4.                 return tmp == 0 ? this.name.compareTo(this.name) : tmp;
  5.         }
复制代码
亲。。。你比较的都是自己跟自己比较。。。当然只有一个数据啊
作者: .....淡定    时间: 2013-9-5 19:41
gulup 发表于 2013-9-5 19:14
亲。。。你比较的都是自己跟自己比较。。。当然只有一个数据啊

谢谢。。。





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