文字数が多いもの順に並ばせる Comparatorを使って - java
2014/02/22
2014/02/24
java
ソート
文字数が多いもの順に並ばせる Comparatorを使ってソートします。
2014/02/24 追記 同じ文字数の場合の判定してなかった.....
package collections;
import java.util.Arrays;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;
public class TestSort {
public static void main(String[] args) {
Comparator<String> c = new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
int len1 = o1.length();
int len2 = o2.length();
if (len1 == len2){
return o1.compareTo(o2);
}
return (len1 > len2) ? -1:1;
}
};
String[] ss = {"いい", "いいい","い","あ", "ああ", "あああ"};
List<String> list = Arrays.asList(ss);
Collections.sort(list, c);
// 結果
// [いいい, あああ, いい, ああ, い, あ]
System.out.println(list);
}
}
: