您现在的位置是:主页 > news > json api wordpress/长沙百家号seo
json api wordpress/长沙百家号seo
admin2025/5/9 0:42:29【news】
简介json api wordpress,长沙百家号seo,桐城58网站在那里做,网页设计培训哪家正规247 比较器Comparator的使用 【需求】 存储学生对象并遍历,创建TreeSet集合,使用带参构造方法 要求,按照年龄从小到大排序,年龄相同的按姓名的字母顺序排列 - Comparable是一个接口,要实现它需要先有一个实现类。…
247 比较器Comparator的使用
【需求】
存储学生对象并遍历,创建TreeSet集合,使用带参构造方法
要求,按照年龄从小到大排序,年龄相同的按姓名的字母顺序排列
-
Comparable是一个接口,要实现它需要先有一个实现类。在这里,采用匿名内部类的方式实现
1 package e247;
2
3 import java.util.Comparator;
4 import java.util.TreeSet;
5
6 public class TreeSetDemo {
7 public static void main(String[] args) {
8 TreeSet<Student247> seven = new TreeSet<Student247>(new Comparator<Student247>(){
9 // 在上面的括号里写匿名内部类,new一个Comparator,比较器借口的实现类对象
10 // compare方法里的this代表TreeSetDemo类,而不是Student类
11 // 所以compare方法的参数传了2个Student对象
12 // 我们把圆括号里的o1,o2改成s1,s2
13 // 自然排序,用this.age - s.age实现
14 // 在这里,s1就是this,s2就是s
15 @Override
16 public int compare(Student247 s1, Student247 s2) {
17 int num1 = s1.getAge() - s2.getAge();//这里用getAge不用this.age是因为
18 // 这里无法使用其他类的private变量
19 int num2 = num1==0?s1.getName().compareTo(s2.getName()) : num1;
20 return num2;
21 }
22 });//注意!!!这里是下花括号、下圆括号、分号,上面这一堆都是在圆括号内的参数
23 // <>尖括号里面是基本类型的包装类
24
25 Student247 s1 = new Student247("MOLE",26);
26 Student247 s2 = new Student247("RAT",24);
27 Student247 s3 = new Student247("TOAD",29);
28 Student247 s4 = new Student247("AVA",24);
29
30 seven.add(s1);
31 seven.add(s2);
32 seven.add(s3);
33 seven.add(s4);
34
35 System.out.println("---35---");
36 for (Student247 s:seven){
37 System.out.println(s.getName()+","+s.getAge());
38 }
39 }
40 }
--------OUTPUT--------
---37---
AVA,24
RAT,24
MOLE,26
TOAD,29