对象数组的排序需要类实现Compareable接口。
Compareable接口中的compareTo方法返回一个整型数值,用来表示两个对象的大小或相等状态。
public class Person implements Comparable<Person> {
private String id;
private String name;
@Override
public String toString() {
return "ID:" + id + " NAME:" + name;
}
public int compareTo(Person o) {
int compareId = this.id.compareToIgnoreCase(o.id);
if (0 != compareId)
return compareId;
int compareName = this.name.compareToIgnoreCase(o.name);
if (0 != compareName)
return compareName;
return 0;
}
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public static void main(String[] args) {
Person[] p = new Person[3];
p[0] = new Person();
p[0].setId("bbb");
p[0].setName("222");
p[1] = new Person();
p[1].setId("ccc");
p[1].setName("111");
p[2] = new Person();
p[2].setId("aaa");
p[2].setName("222");
Arrays.sort(p);
for (Person pe : p) {
System.out.println(pe);
}
}
运行结果:
ID:aaa NAME:222
ID:bbb NAME:111
ID:bbb NAME:222
分享到:
相关推荐
js中包含一个类,该类的主要功能是:对对象数组进行多字段排序和汇总。调用方法类似: 1、排序 :new SPArraySortHelper(数据, 分组排序字段, 汇总字段).sort() 2、汇总:new SPArraySortHelper(数据, 分组排序字段,...
iOS开发·必会的算法操作:字符串数组排序 模型对象数组排序
arraylist 对象中的某个值排序,并非单出的数组排序
按所推荐的程序在IE下跑了下,的确,排序耗时很小。 代码如下: [removed] /* * 洗牌 */ function getRandomPlayCard(m){ var array1=new Array(m); for(var i=0;i<m;i++){ var rnd=Math.floor(Math.random()*(i+0...
javascript中实现对象数组的排序功能 只要数组中的对象存在多个属性,即可传入sql语句排序形式的参数,加以排序,如传入'col1 desc,col2 asc' 就可以实现对数组中对象通过col1倒序排列,如果col1值相同,则通过col2排序,...
为普通数组和对象数组排序,对象数组排序时,可指定排序所依据的对象属性,汉字将以汉语拼音为序。
易语言利用数组进行数值排序,简单粗暴
java源代码
NULL 博文链接:https://pridesnow.iteye.com/blog/1453660
在javascript中实现多维数组、对象数组排序,基本上都是用原生的sort()方法,用于对数组的元素进行排序。 其基本的用法就不说了,先看个简单的排序例子: //Sort alphabetically and ascending: var myarray=["Bob...
分享一个用于数组或者对象的排序的函数。该函数可以以任意深度的数组或者对象的值作为排序基数对数组或的元素进行排序。 代码如下: /** * 排序数组或者对象 * by Jinko * date -- * @param object 数组或...
JavaScript实现多维数组、对象数组排序,其实用的就是原生的sort()方法,用于对数组的元素进行排序。 sort() 方法用于对数组的元素进行排序。语法如下: arrayObject.sort(sortby) 返回值为对数组的引用。请注意,...
这个例子定义了一个int数组,然后使用Array.Sort(arr)静态方法对此数组进行排序,最后输出排序后的数组。以上例子将毫无意外的依次输出1,2,3,4,5,6. 为什么Array的Sort方法可以正确的对int数组进行排序呢,...
主要介绍了JavaScript对象数组如何按指定属性和排序方向进行排序的相关资料,非常不错,具有参考借鉴价值,需要的朋友可以参考下
面向对象实现队列的排序,包括排序的算法,用VC++面向对象实现,继承封装多态的基本用法
当遇到数组排序时,我们经常会使用学过的几种排序方法,而java 本身提供了Arrays.sort,在数据元素较少或者对效率要求不是抬高时,直接使用Arrays.sort来的更容易。查看一下源码后Arrays.sort 本身采用的是快速排序。
主要介绍了vue数组对象排序的实现代码,这里整理了详细的代码,非常具有实用价值,需要的朋友可以参考下
java数据结构。实现对象数组查找和排序功能。
java中通过键盘输入来实例化类对象数组,同时对类对象排序,希望初学java的同学们可以下载下学习下