文字数が多いもの順に並ばせる Comparatorを使って - java 2014/02/22
2014/02/24

文字数が多いもの順に並ばせる 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); } }


: