•
Student.java
package com.stream11;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class Student implements Comparable<Student> {
    private String name;
    private int score;
    @Override
    public int compareTo(Student o) {
        return Integer.compare(score, o.score);
//        return score - o.score;
    }
}
Java
복사
•
Student.java
package com.stream11;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class Student implements Comparable<Student> {
    private String name;
    private int score;
    @Override
    public int compareTo(Student o) {
        return Integer.compare(score, o.score);
//        return score - o.score;
    }
}
Java
복사
•
SortExample.java
package com.stream11;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
public class SortExample {
    public static void main(String[] args) {
        List<Student> sList = new ArrayList<>();
        sList.add(new Student("박명수", 60));
        sList.add(new Student("유재석", 100));
        sList.add(new Student("정준하", 40));
        sList.stream()
                .sorted()
                .forEach(s -> System.out.println(s));
        System.out.println();
        sList.stream()
                .sorted(Comparator.reverseOrder()) // 역순으로 출력
                .forEach(s -> System.out.println(s));
    }
}
Java
복사
•
SortExample.java (람다식을 활용한 정렬)
package com.stream12;
import java.util.ArrayList;
import java.util.Comparator;
import java.util.List;
public class SortExample {
    public static void main(String[] args) {
        List<Student> sList = new ArrayList<>();
        sList.add(new Student("박명수", 60));
        sList.add(new Student("유재석", 100));
        sList.add(new Student("정준하", 40));
        sList.stream()
                .sorted((s1, s2) -> s1.getScore() - s2.getScore())
                .forEach(s -> System.out.println(s));
        System.out.println();
        sList.stream()
                .sorted((s1, s2) -> s2.getScore() - s1.getScore())
                .forEach(s -> System.out.println(s));
    }
}
package com.stream12;
import lombok.AllArgsConstructor;
import lombok.Data;
@Data
@AllArgsConstructor
public class Student {
    private String name;
    private int score;
}
Java
복사

