是否可以使用对数组进行排序Arrays.sort()
然后将另一个相关数组放置在与排序数组相同的位置,例如:
String arrNames[] = new String[5];
String arrCellNo[] = new String[arrNames.length];
String arrNamesSorted[] = new String[arrNames.length];
System.arraycopy(arrNames, 0, arrNamesSorted, 0, arrNames.length);
Arrays.sort(arrNamesSorted);
从这一点上我想做的是排序CellNo
数组,这样如果“person”有一个 cellNo“x”,他在数组后面将有相同的“cellNo”“x”arrNames
已排序
你不能有Arrays.sort
以对第一个数组进行排序的方式操作第二个数组。
解决方案是对包含您需要的所有数据的您自己的对象进行排序。创建一个Contact
具有名称和单元格编号属性的类。然后创建一个类来实现Comparator<Contact> http://docs.oracle.com/javase/7/docs/api/java/util/Comparator.html (say, ContactComparator
) 来比较名称。
然后你就可以对数组进行排序Contact
对象与特定的过载Arrays.sort http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#sort%28T%5b%5d,%20java.util.Comparator%29.
Arrays.sort(arrContacts, new ContactComparator());
所有数据将保持有序,因为相同的名称仍将具有相同的单元格编号。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)