728x90
Arrays.sort()를 이용하여 배열을 정렬한다
객체는 Comparable이 구현되어 있는데 sort()는 Comparable에 의해 리턴되는 값을 비교하여 오름차순 또는 내림차순으로 배열을 정렬한다
따라서 String 배열을 문자 길이 순서로 정렬하기 위해 직접 Comparator를 구현하면 된다!
String[] crossword7 = {"a", "bb","dddd", "ffffff","ccc","ggggggg","eeeee"};
//입력한 값들을 길이가 짧은 순서부터 출력하기 위해 오름차순 정렬
Arrays.sort(crossword7, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return s1.length() - s2.length(); //여기 순서만 바꿔줌
}
});
System.out.println("Sorted arr[]:" + Arrays.toString(crossword7));
//입력한 값들을 길이가 긴 순서부터 출력하기 위해 내림차순 정렬
Arrays.sort(crossword7, new Comparator<String>() {
@Override
public int compare(String s1, String s2) {
return s2.length() - s1.length(); //여기 순서만 바꿔줌
}
});
System.out.println("Sorted arr[]:" + Arrays.toString(crossword7));
참고)
728x90
'코딩테스트' 카테고리의 다른 글
[리트코드] 1222번 - JAVA (0) | 2022.05.31 |
---|---|
[리트코드] Set Matrix Zeroes - JAVA (0) | 2022.05.26 |
[JAVA] 문자열 자르기 - (indexOf / substring / split) (0) | 2022.03.30 |
코드업 기초 100제 - 1030번 (0) | 2021.07.30 |
코드업 기초 100제 - 1029번 (0) | 2021.07.30 |
댓글