如何在 Java 中使用比较器对 ArrayList 进行排序
默认情况下,ArrayList 中的项目按插入到列表中的顺序显示,但有时需要按升序或降序浏览这些项。此代码实现Collections.sort()按升序和降序对 a Arraylist 进行排序。
,比较器) 它允许您按升序和降序对 ArrayList 进行排序。此函数使用对象比较器,每次将两个对象与函数进行比较 o1.compareTo(o2).
American Standard Code for Information Interchange
Documentation Collections.sort
stackOverFlow:如何在 java
按升序对 ArrayList 进行排序
import java.util.ArrayList;输出:
import java.util.Collections;
public class Tri {
public static void main(String[] args) {
ArrayListunsorted = new ArrayList ();
nonsort.add(01”);
nonsort.add(0A”);
unsorted.add(0B”);
unsorted.add(ETX”);
unsorted.add(00”);
unsorted.add(0C”);
nonsort.add(NUL”);
unsorted.add(05”);
unsorted.add(19”);
unsorted.add(0001011”);
System.out.println(排序前”);
for(int i=0; i < unsorted.size(); i++)
System.out.println(unsorted.get(i));
System.out.println(\n排序后”);
Collections.sort(未排序);
for(int i=0; i < unsorted.size(); i++)
System.out.println(unsorted.get(i));
}
}
之前 tri
01
0A
0B
ETX
00
0C
NUL
05
19
0001011
排序后
00
0001011
01
05
0A
0B
0C
19
ETX
NUL
按降序对 ArrayList 进行排序
Collections 类还有另一个方法 Collections.sort(列表import java.util.ArrayList;输出:
import java.util.Collections;
import java.util.Comparator;
public class Tri {
public static void main(String[] args) {
ArrayListunsorted = new ArrayList ();
unsorted.add(11000000”);
unsorted.add(10101000”);
unsorted.add(00000001”);
unsorted.add(00001111”);
nontrié.add(00001100”);
unsorted.add(00001111”);
unsorted.add(11111111”);
nonsort.add(11111100”);
unsorted.add(00000000”);
unsorted.add(00000011”);
unsorted.add(00001110”);
System.out.println(排序前”);
for(int i=0; i < unsorted.size(); i++)
System.out.println(unsorted.get(i)+ ”);
System.out.println(\n排序后”);
Collections.sort(nonsort, new Comparator() {
@Override
public int compare(String s1, String s2)
{
/*s2 与 s1 相比,以便顺序降序
return s2.compareTo(s1);
}
});
for(int i=0; i < unsorted.size(); i++)
System.out.println(unsorted.get(i)+ ”);
}
}
Before 排序参考:
11000000
10101000
00000001
00001111
00001100
00001111
11111111
11111100
00000000
00000011
00001110
排序后
11111111
11111100
11000000
10101000
00001111
00001111
00001110
00001100
00000011
00000001
00000000
American Standard Code for Information Interchange
Documentation Collections.sort
stackOverFlow:如何在 java