按字母顺序对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));

我试图以上述方式对列表进行排序。但是它将排序后的数组显示为:

Athira

Karthika

..

..

ananya

bala

...

但我不想使其区分大小写。我想要的结果是:

ananya

Athira

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

回到顶部