java编写一个程序,10个字符串,按每个字符串第一个单词长度递增排序

编写一个程序,10个字符串,按每个字符串第一个单词长度递增排序

例子:
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

public class TempTest {
public static void main(String[] args) throws Exception {
List<String> lst = new ArrayList<String>();
lst.add("abcd efg");
lst.add("ab cdefg");
lst.add("abc defg");
lst.add("a efgh");
Collections.sort(lst);
for (String s : lst) {
System.out.println(s);
}
}

class MyComparator implements Comparator<String> {
public int compare(String o1, String o2) {
String s1 = o1.split(" ")[0];
String s2 = o2.split(" ")[0];
return s1.length() - s2.length();
}
}
}
温馨提示:内容为网友见解,仅供参考
第1个回答  2014-03-20
什么叫做第一个单词长度啊?能详细解释一下吗?还是根据这10个字符串的长度去排序啊?追问

比如说:abcd efg
ab cdefg
abc defg
按第一个单词排序后的结果就是
ab cdefg
abc defg
abcd efg

比如说:abcd efg
ab cdefg
abc defg
按第一个单词排序后的结果就是
ab cdefg
abc defg
abcd efg

追答

根据空格进行拆分,然后用charAt()拆开,然后排序,进行重组就可以了。

相似回答
大家正在搜