본문 바로가기
▶ Back-End/Java

Object List 정렬(Comparator.comparing())

by 오늘도 코딩 2021. 6. 2.
728x90
반응형

Comparator.comparing()로 간단하게 해결

 

 

▷ Example

 

public void testComparator(){
        
	// 테스트 데이터 생성
	List<DistVO> list = new ArrayList<DistVO>();
	DistVO vo;
	
	vo = new DistVO();
	vo.setName("짱구분식");
	vo.setDist(11);
	list.add(vo);
	
	vo = new DistVO();
	vo.setName("홍길동분식");
	vo.setDist(5);
	list.add(vo);
	
	vo = new DistVO();
	vo.setName("김길동분식");
	vo.setDist(5);
	list.add(vo);
	
	vo = new DistVO();
	vo.setName("십이분식");
	vo.setDist(34);
	list.add(vo);
	
	vo = new DistVO();
	vo.setName("저먼분식");
	vo.setDist(94);
	list.add(vo);
	
	// 정렬 전 출력
	System.out.println("정렬 전 ====================");
	for(DistVO data : list){
		System.out.println(data);
	}
	System.out.println("정렬 전 ====================");
	
	/* 이름 정렬*/
	// list.sort(Comparator.comparing(DistVO::getName)); // 오름차순
	// list.sort(Comparator.comparing(DistVO::getName).reversed()); // 내림차순
	
	/* 거리 정렬 */
	list.sort(Comparator.comparing(DistVO::getDist)); // 오름차순
	// list.sort(Comparator.comparing(DistVO::getDist).reversed()); // 내림차순
	
	System.out.println("정렬 후 ====================");
	for(DistVO data : list){
		System.out.println(data);
	}
	System.out.println("정렬 후 ====================");
}

/* 
	결과 : 
		정렬 전 ====================
		DistVO(name=짱구분식, dist=11)
		DistVO(name=홍길동분식, dist=5)
		DistVO(name=김길동분식, dist=5)
		DistVO(name=십이분식, dist=34)
		DistVO(name=저먼분식, dist=94)
		정렬 전 ====================
		정렬 후 ====================
		DistVO(name=홍길동분식, dist=5)
		DistVO(name=김길동분식, dist=5)
		DistVO(name=짱구분식, dist=11)
		DistVO(name=십이분식, dist=34)
		DistVO(name=저먼분식, dist=94)
		정렬 후 ====================
*/

 

 

▷ 관련 글

 

Object List 정렬(Collectrions.sort())

Collectrions.sort로 간단하게 해결 *정렬 시 사용 할 Comparator Override *아래 더 간단한 로직 참고 ▷ Example - 나와 가장 가까운 분식집 순으로 정렬 public static void testSort() { // 테스트 데이터 생성 List list

coding-today.tistory.com

 

 

728x90
728x90

'▶ Back-End > Java' 카테고리의 다른 글

Java 11 버전 설치 방법  (0) 2022.05.10
비동기처리(CompletableFuture.allOf())  (0) 2021.06.23
@EventListener Example  (0) 2021.05.18
파일 생성하기  (0) 2021.05.13
파일 검색 후 파일 읽기  (0) 2021.05.13

댓글