자바 ArrayList 정렬 메커니즘 질문
-
게시물 수정 , 삭제는 로그인 필요
자바에서 ArrayList를 정렬할 때 Collections.sort을 사용해서 정렬하던데, 이 때 comparable 인터페이스나 comparator 인터페이스를 사용해서 각각 comparTo랑 compare을 오버라이딩해서 사용하던데,
ArrayList / Collections.sort / comparable(혹은 comparator) / comparTo(혹은 compare)
이 (질문1)네가지가 상호작용하는 메커니즘, 그리고 (질문2)comparTo(혹은 compare)을 정의 할 때 리턴값에 따른 정렬 방식도 어떤 메커니즘인지 잘 모르겠습니다. 때문에 문법이 잘 이해되지가 않네요.
어찌저찌 인터넷에 있는 예시들을 보고해서 오류없이 실행은 되는데, 하고나서도 잘 모르겠어서 이렇게 질문 드립니다.
아래는 제가 연습으로 코딩한 것인데, 설명해주실 때 예시로 들어주실만한게 없으면,
아래것을 예시로 해주신다면 감사하겠습니다!
// private void calSort(ArrayList<testList> list)
// {
// Collections.sort(list, new Comparator<testList>()
// {
// @Override
// public int compare(testList t1, testList t2)
// {
// if(t1.getSum() > t2.getSum())
// {
// return -1;
// }
// else if(t1.getSum() < t2.getSum())
// {
// return 1;
// }
// return 0;
// }
// }
// );
// }
#자바 arraylist #자바 arraylist 정렬 #자바 arraylist 출력 #자바 arraylist 배열 #자바 arraylist 2차원 배열 #자바 arraylist 값 가져오기 #자바 arraylist 초기화 #자바 arraylist remove #자바 arraylist 중복 제거 #자바 arraylist 길이