对象数组的排序需要类实现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(数据, 分组排序字段,...
在Java编程中,对象数组排序是一项常见的任务,特别是在处理复杂数据结构时。当我们需要根据对象的多个属性进行排序时,情况会变得稍微复杂。本文将深入探讨如何在Java中实现这个功能,结合给出的标签“源码”和...
二、模型对象数组排序 在实际项目中,我们通常需要对包含自定义模型对象的数组进行排序。假设我们有一个`Person`类,包含`name`属性: ```swift class Person { var name: String // 其他属性和方法... init...
在Java编程语言中,ArrayList是集合框架的一部分,属于List接口的实现类,它是一个动态数组,可以存储可变数量的对象。当我们说“arraylist对象中的某个值排序”时,这通常指的是对ArrayList中的元素,而不是...
为了应对不同场景下的排序需求,本文将介绍一个自定义的JavaScript函数,该函数支持对数组或对象进行排序,并且能够根据数组或对象中嵌套的任意深度的子键进行排序。以下是对该函数及其使用方法的详细解析。 函数...
按所推荐的程序在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排序,...
为普通数组和对象数组排序,对象数组排序时,可指定排序所依据的对象属性,汉字将以汉语拼音为序。
易语言利用数组进行数值排序,简单粗暴
对象数组排序 对于对象数组,可以使用`sortOn`方法根据对象中的某个属性值进行排序。例如,下面的代码片段展示了如何对一个包含`productName`和`version`属性的对象数组进行排序: ```actionscript var flexArray...
总结来说,本文介绍的C#实现二维数组排序的方法,通过将二维数组转换为`DataTable`并利用其内置的排序功能,提供了一种灵活且高效的解决方案。这种方法不仅适用于各种数据类型,而且保持了原始数组的引用,使得排序...
除了对象数组排序,`Arrays.sort()`还可以处理不同类型的数组。例如: 1. 对于数字数组,可以直接调用`Arrays.sort(intArray)`,它会按升序排列整数。 2. 对于字符串数组,`Arrays.sort(strArray)`会按照字典顺序...
java源代码
2. 对对象数组排序:对于对象数组,Java 5.0支持自定义比较器。如果对象实现了`Comparable`接口,`Arrays.sort()`会自动使用`compareTo()`方法进行排序。如果没有实现,可以传入一个`Comparator`实例进行定制排序。 ...
在JavaScript中,处理对象数组的排序是一项常见的任务,特别是在前端开发中。本文将详细讲解如何根据指定的属性和排序方向对JavaScript对象数组进行排序。 首先,了解JavaScript数组的`sort()`方法。`sort()`方法...
总的来说,JavaScript中的对象数组排序需要理解`sort()`方法的工作原理,并能编写自定义的比较函数来处理复杂的数据结构。通过熟练掌握这些技巧,你可以有效地对任何类型的数据进行排序,以满足你的应用程序需求。
在本例中,我们首先看到一个简单的整型(int)数组排序示例: ```csharp int[] intArray = new int[]{2,3,6,1,4,5}; Array.Sort(intArray); Array.ForEach(intArray,(i)=>Console.WriteLine(i)); ``` 这段代码定义了...
在Java编程中,从键盘输入数据并进行对象数组的排序是一项常见的操作,尤其对于初学者来说,这有助于理解和掌握面向对象编程的基本概念。本篇将详细介绍如何实现这一过程。 首先,我们需要创建一个对象类,例如我们...
JavaScript实现多维数组、对象数组排序,其实用的就是原生的sort()方法,用于对数组的元素进行排序。 sort() 方法用于对数组的元素进行排序。语法如下: arrayObject.sort(sortby) 返回值为对数组的引用。请注意,...