[プログラマ]-文字列内で任意にソート(JAVA)


問題の説明


リスト文字列が文字列で構成され、整数nを有する場合、各文字列のインデックスnのn番目の文字に基づいて昇順にソートしようとします.たとえば、文字列が[「sun」、「bed」、「car」であり、nが1の場合、文字列は各単語インデックス1の文字「u」、「e」、および「a」でソートされます.

I/O例



Java Code


IDEの誇張はありません...反省する.Comparator<>compare復習…
import java.util.*;
class Solution {
    public String[] solution(String[] strings, int n) {
        Arrays.sort(strings, new Comparator<String>() {
            @Override
            public int compare(String s1, String s2) {
                // n번째 문자가 다르다면 n번째 문자를 기준으로 정렬
                if (s1.charAt(n) != s2.charAt(n)) {
                    return s1.charAt(n) - s2.charAt(n);
                // n번째 문자가 같으면 문자열 자체를 사전순으로 정렬
                } else {
                    return s1.compareTo(s2);
                }
            };
        });
        return strings;
    }
}