迭代器模式-java

package u18;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
/**
 * 通过实现comparable接口来比较多个对象的属性值,并按顺序输出
 * @author young
 *
 */
class Student implements Comparable<Student> {
    private int id;
    private String name;
    private int age;


    public Student(int id, String name, int age) {
        super();
        this.id = id;
        this.name = name;
        this.age = age;

    }

    // 三个返回结果都要写出来
    public int compareTo(Student o) {
        if(this.id > o.id){
            return -1;
        }else if(this.id < o.id){
            return 1;
        }else {
            return 0;
        }
    }
    public int compareTo2(Student o) {
        if(this.id < o.id){
            return -1;
        }else if(this.id > o.id){
            return 1;
        }else {
            return 0;
        }
    }
    @Override
    public String toString(){
        return "姓名: " + this.name + ";学号: " + this.id + ";年龄: " + this.age;
    }
}
package u18;


import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

public class ComparableTest1 {
    public static void main(String[] args) {
        Student s1 = new Student(1, "l1", 29);
        Student s2 = new Student(3, "l2", 29 );
        Student s3 = new Student(5, "l3", 29 );
        Student s4 = new Student(5, "l4", 29 );
        Student s5 = new Student(6, "l5", 29 );
        Student s6 = new Student(58, "l6", 29 );
        Student s7 = new Student(69, "l7", 29 );
        Student s8 = new Student(86, "l8", 29 );
        Student s9 = new Student(28, "l9", 29 );
        Student s10 = new Student(68, "l10", 29 );
        Student s11= new Student(354, "l11", 29 );
        Student s12 = new Student(24, "l12", 29 );
        Student s13= new Student(768, "l13", 29 );
        Student s14 = new Student(270, "l14", 29 );
        Student s15 = new Student(767, "l15", 29 );
        Student s16 = new Student(77, "l16", 29 );
        Student s17 = new Student(78, "17", 29 );
        Student s18 = new Student(80, "l18", 29 );
        Student s19 = new Student(81, "l19", 29 );
        Student s20 = new Student(82, "l20", 29 );
        Student s21 = new Student(83, "l21", 29 );
        Student s22 = new Student(84, "l22", 29 );
        Student s23 = new Student(85, "l23", 29 );
        Student s24 = new Student(86, "l24", 29 );
        Student s25 = new Student(87, "l25", 29 );
        Student s26 = new Student(88, "l26", 29 );
        Student s27 = new Student(89, "l27", 29 );
        Student s28 = new Student(90, "l28", 29 );
        Student s29 = new Student(91, "l29", 29 );
        Student s30 = new Student(29, "l30", 29 );
        Student s31 = new Student(92, "l31", 29 );
        Student s32 = new Student(93, "l32", 29 );
        Student s33 = new Student(94, "l33", 29 );
        Student s34 = new Student(95, "l34", 29 );
        Student s35 = new Student(96, "l35", 29 );
        Student s36 = new Student(97, "l36", 29 );
        Student s37 = new Student(98, "l37", 29 );
        Student s38 = new Student(99, "l38", 29 );
        Student s39 = new Student(100, "l39", 29 );
        Student s40 = new Student(101, "l40", 29 );
        Student s41 = new Student(102, "l41", 29 );
        Student s42 = new Student(103, "l42", 29 );
        Student s43 = new Student(104, "l43", 29 );
        Student s44 = new Student(105, "l44", 29 );


        List<Student> list = new ArrayList<Student>();
        list.add(s1);
        list.add(s2);
        list.add(s3);
        list.add(s4);
        list.add(s5);
        list.add(s6);
        list.add(s7);
        list.add(s8);
        list.add(s9);
        list.add(s10);
        list.add(s11);
        list.add(s12);
        list.add(s13);
        list.add(s14);
        list.add(s15);
        list.add(s16);
        list.add(s17);
        list.add(s18);
        list.add(s19);
        list.add(s20);
        list.add(s21);
        list.add(s22);
        list.add(s23);
        list.add(s24);
        list.add(s25);
        list.add(s26);
        list.add(s27);
        list.add(s28);
        list.add(s29);
        list.add(s30);
        list.add(s31);
        list.add(s32);
        list.add(s33);
        list.add(s34);
        list.add(s35);
        list.add(s36);
        list.add(s37);
        list.add(s38);
        list.add(s39);
        list.add(s40);
        list.add(s41);
        list.add(s42);
        list.add(s43);
        list.add(s44);

        Collections.sort(list);
        System.out.println("按照学号从小到大进行排序输出: ");
        for(Student stu : list){
            System.out.println(stu.toString());
        }
    }
}

 

posted @ 2021-10-30 16:05  yasai  阅读(35)  评论(0编辑  收藏  举报