import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
public class ListSort {
public static void main(String[] args){
ArrayList list = new ArrayList();
list.add(new Person("lcl",28));
list.add(new Person("fx",23));
list.add(new Person("wqx",29));
Comparator comp = new Comparator(){
public int compare(Object o1,Object o2) {
Person p1=(Person)o1;
Person p2=(Person)o2;
if(p1.age<p2.age)//或者比较name属性((p1.name.toString()).CompareTo.(p2.name.toString())>0)
return 1;
else
return 0;
}
};
Collections.sort(list,comp);
for(int i = 0;i<list.size();i++){
Person p = (Person)list.get(i);
System.out.println(p.getName());
}
}
public static class Person {
private int age;
private String name;
public Person(String name,int age){
this.age = age;
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
}
分享到:
相关推荐
对集合中的对象进行排序,例如:List中存放了User对象,则可根据User对象的某一个属性进行顺序or倒序的排序
- **交换类排序**:通过交换无序序列中的记录,找出关键字最小或最大的记录,将其放到已排序好的序列末尾,以此方式增加有序子序列的长度。 - **选择类排序**:从无序子序列中选出关键字最小或最大的记录,将其放到...
在提供的压缩包文件中,"Www.2e3.org"可能是源代码文件或者相关文档的存放位置,包含了实现这个仿千千播放列表List控件所需的详细信息。开发者可以下载并研究这些文件,以了解具体的实现方法和技巧。同时,参考和...
数据表(data list)是指待排序数据对象的有限集合,而主关键字(key)则是用于区分不同对象的一个属性,通常作为排序的依据。对于含有`n`个记录的序列`{R1, R2, …, Rn}`及其相应的关键字序列`{K1, K2, …, Kn}`,通过...
选择排序是一种简单直观的排序算法,它的工作原理是每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。选择排序是不稳定的排序方法,因为它可能会改变...
在这个"java电话本集合框架版"中,我们重点探讨的是如何利用Java的List接口及其实现类来构建一个功能丰富的电话簿系统。 首先,Java的List接口是集合框架的一部分,它定义了一个有序的元素集合,允许有重复的元素。...
首先,你需要创建一个代表“父”表的 Java 类,比如 `User` 类,并且在类中定义一个集合类型的属性,用于存放“子”表的数据,例如 `List<Order>`。 2. **创建“父”表的映射文件**: 创建一个以 `User` 类命名的...
- 修改视图,如更新其查询、列或排序顺序,然后调用 `Update()` 方法。 - 删除视图,使用 `Delete()` 方法。 这些基本操作构成了对MOSS中文档库进行编程的基础。在实际开发中,还需要考虑权限、事件处理程序、...
当用户点击List1中的某项,通过List_Click事件将其移动到List2,同时从List1中移除,确保不超过5门课程的选择限制。 2. **组合框(ComboBox)**:组合框允许用户从下拉列表中选择一个项,也可以手动输入。实验中,...
11. SortList(L):表排序:对表 L 中的所有元素按值升序排列。 线性表的顺序存储特点是在内存中开辟一块连续空间,按照表中元素的逻辑排列顺序依次存储。顺序表的定义为: struct List{ ElemType list[MaxSize]; ...
4. C++标准库:C++标准库提供了大量预定义的类和函数,如输入/输出流(iostream)、容器(如vector、list、set等)、算法(如排序、查找)和智能指针(shared_ptr、unique_ptr等)。理解并熟练使用这些库可以提高...
2. 引入组件:在模板文件中添加`{{ember-sortable-list}}`标签,并根据需要传递属性,如数据源、排序回调等。 3. 配置和自定义:根据项目需求,可以修改组件的默认配置,如拖放效果、事件处理等。 Ember Sortable ...
IList是.NET Framework中System.Collections.Generic命名空间下的一个接口,它是List类的基接口。IList接口继承自ICollection和IEnumerable,并添加了一些额外的方法和属性,如Insert、RemoveAt等,使我们可以对列表...
通过Adapter类,将数据集与ListView进行绑定,Adapter负责将数据转换为ListView中的View。 2. **ArrayAdapter**:在Android中,我们通常使用ArrayAdapter来绑定数据到ListView。ArrayAdapter是默认的适配器,可以...
在获取到所有城市数据后,我们需要对其进行排序并分组。可以使用HashMap来实现,键是每个字母(如"A"、"B"等),值是一个List,存放以该字母开头的城市。 3. 自定义Adapter: 创建一个自定义Adapter,例如`...
在Java集合框架中,如果要对对象进行排序,需要实现Comparable接口或者在构造时提供一个Comparator比较器。 14. 编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。 要正确处理汉字...
Java容器类是Java编程语言中用于管理和操作对象集合的重要组成部分,它们主要集中在`java.util`包下。在Java集合框架中,"容器"通常指的是能够存储一组对象的类或者接口。这个框架为开发者提供了灵活的方式来存储、...
文件中主要介绍了几种基本的排序算法,包括冒泡排序、插入排序、选择排序以及快速排序,并对它们的原理和性能进行了描述。下面我们详细来解读这些排序算法的知识点。 冒泡排序(Bubble Sort): 冒泡排序是一种简单...
类是面向对象编程的基础,在Java中,所有程序都是通过类来组织的。 ### 静态:`static` `static`关键字用来声明静态变量、静态方法或静态代码块。静态成员属于类本身,而不是类的实例,这意味着它们可以通过类名...