1. this.age 就是本类的age,per.age,就是参数的age,也就是下面添加进来的person类的age,比如 allSet.add(new Person("张三",30)) ; 第一语句,前面没有person类型不需要比较,allSet.add(new Person("李四",31)) ;此时,this.age 就是张三的age,per.age就是李四的age。
2. SetallSet = new TreeSet () ; 使用person,说明我的set 集合只能存储person类型的数据,你往里面添加其他类型会报错。Set allSet :的只能存放String类型。
3. 自动调用,添加新的对象时候回自动调用 和前面的对象比较,从而确定存放顺序。
1 当前对象的年龄和传入对象的年龄
2 因为是Person类实现Comparable接口。String类使用 Comparable
3 TreeSet 是通过TreeMap实现的,你看看TreeMap的代码就可以看到compareTo方法的调用