반응형
이미지와 같이 Model을 가지고 있는 List를
Model의 특정 값 기준으로 정렬하려고 하는데
Comparator를 이용하여
모델 안에 들어있는 값으로
간단히 정렬이 가능하다
[Model{name='Kim', age=10}, Model{name='Lee', age=50}, Model{name='Park', age=30}]
-- 정렬 전
List명.sort(new Comparator<모델>() {
public int compare(모델 m1, 모델 m2) {
return Integer.compare(m1.age, m2.age) == 1 ? -1 : Integer.compare(m1.age, m2.age) == 0 ? 0 : 1;
}
});
modelList.sort(new Comparator<Model>() {
public int compare(Model m1, Model m2) {
return Integer.compare(m1.age, m2.age) == 1 ? -1 : Integer.compare(m1.age, m2.age) == 0 ? 0 : 1;
}
});
-- 정렬 후
[Model{name='Lee', age=50}, Model{name='Park', age=30}, Model{name='Kim', age=10}]
이미지의 코드를 코드블럭으로 가져와 봤는데
List sort 시 Comparator를 사용해서
모델의 특정 값 기준으로
큰 값은 올리고 작은 값은 내리는 식으로
정렬을 해서 반환하게 된다
반응형
'Language > Java' 카테고리의 다른 글
자바 LocalDateTime 포맷 적용방법 (0) | 2022.01.17 |
---|---|
자바 LocalDateTime을 Long 타입으로 바꾸는 방법 (0) | 2022.01.17 |
BigDecimal compareTo 사용방법 (0) | 2022.01.13 |
자바 main 메소드에서 같은 클래스의 메소드를 객체화해야 호출할 수 있는 이유 (1) | 2022.01.13 |
자바 BigDecimal setScale deprecated 문제 해결방법 (0) | 2022.01.03 |
댓글