如果字符串长度相等,则恢复为自然排序顺序

cho*_*boy 0 java sorting performance comparator

我正在尝试读取文件,并比较字符串长度.如果两个字符串长度相同,那么我想按自然排序顺序(按字母顺序)对它们进行排序.

这是我正在研究的比较器的片段.一切都完整,减去排序相同长度的字符串.

    Collections.sort(s, new Comparator<String>() {
        @Override
        public int compare(String o1, String o2) {
            return o1.length() - o2.length();
        }
    }); 
Run Code Online (Sandbox Code Playgroud)

感谢任何输入或adivce

Hov*_*els 7

只需在比较方法中添加一个if else块.

伪代码:

if lengths are not equal 
   return o1's length compared to o2's length.
else 
   return o1 compared to o2.
Run Code Online (Sandbox Code Playgroud)

我想你可以弄清楚剩下的了.