java中如何取字符串并排序

今天笔试的时候遇到一个题,结果现在还迷糊呢。特向大家请教,寻求帮助。
题目:已知一个字符串字符串"aaaabbbbbcccbbbbbd",要求最终排序是
bbbbb
bbbbb
aaaa
ccc
d
根据长度有多到少来排序。
请问大家这个题如何来解决?

这样?
[code="java"]import java.util.*;

public class Demo {
public static void main(String[] args) {
String str = "aaaabbbbbcccbbbbbd";
String[] strs = str.split("(?<=(\w))(?!\1)");
Arrays.sort(strs, new Comparator() {
public int compare(String a, String b) {
return b.length() - a.length();
}
});
for (String s : strs) System.out.println(s);
}
}[/code]