按字母顺序对arraylist排序(不区分大小写)
我有一个names
包含人名的字符串arraylist 。我想按字母顺序对arraylist进行排序。
ArrayList<String> names = new ArrayList<String>();names.add("seetha");
names.add("sudhin");
names.add("Swetha");
names.add("Neethu");
names.add("ananya");
names.add("Athira");
names.add("bala");
names.add("Tony");
names.add("Karthika");
names.add("Nithin");
names.add("Vinod");
names.add("jeena");
Collections.sort(names);
for(int i=0; i<names.size(); i++)
System.out.println(names.get(i));
我试图以上述方式对列表进行排序。但是它将排序后的数组显示为:
AthiraKarthika
..
..
ananya
bala
...
但我不想使其区分大小写。我想要的结果是:
ananyaAthira
bala
回答:
自定义Comparator
应该有帮助
Collections.sort(list, new Comparator<String>() { @Override
public int compare(String s1, String s2) {
return s1.compareToIgnoreCase(s2);
}
});
或者,如果你使用的是Java 8:
list.sort(String::compareToIgnoreCase);
以上是 按字母顺序对arraylist排序(不区分大小写) 的全部内容, 来源链接: utcz.com/qa/432172.html