Java 按字母顺序排序数组
如何在Java/Android中按字母顺序对数组排序? 之后,我想将有序数组提供给Java 按字母顺序排序数组,java,android,Java,Android,如何在Java/Android中按字母顺序对数组排序? 之后,我想将有序数组提供给列表视图数组。sort()应该可以做到这一点 有关更复杂的排序,请参阅 例如: Arrays.sort(some_array, new Comparator<SomeObject>() { @Override public int compare(SomeObject entry1, SomeObject entry2) { return entry1.getSomeData().compare
列表视图
数组。sort()应该可以做到这一点
有关更复杂的排序,请参阅 例如:
Arrays.sort(some_array, new Comparator<SomeObject>() {
@Override
public int compare(SomeObject entry1, SomeObject entry2) {
return entry1.getSomeData().compareTo(entry2.getSomeData());
}
Arrays.sort(一些数组,新的比较器(){
@凌驾
public int compare(SomeObject entry1,SomeObject entry2){
返回entry1.getSomeData().compareTo(entry2.getSomeData());
}
})) 实现可比较接口的对象(如字符串)具有自然顺序(由其compareTo方法定义),因此您只需使用: 它将直接对数组进行排序,而不会进行复制 如果您想要一个不被认为是“自然”的更具体的排序,您可以为该对象创建一个比较器:
Comparator<MyObject> comp = new Comparator<MyObject>() {
public int compare(MyObject obj1, MyObject obj2) {
//Code here
}
}
Arrays.sort(yourArrayOfObjects, comp);
比较器comp=新比较器(){
公共整数比较(MyObject对象J1、MyObject对象J2){
//代码在这里
}
}
Arrays.sort(youraryofobjects,comp);
and(其中第一个对象是对象本身)的规则是:如果第一个对象小于第二个对象,则返回负数;如果第一个对象小于第二个对象,则返回正数;如果它们相等,则返回0。只需使用
Arrays.sort(myarray);
. 无效排序(T[]a,比较器
Arrays.sort(myarray);