`
bill_sbia
  • 浏览: 158427 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

ArrayList 对象排序实例

 
阅读更多
import java.util.ArrayList;
import java.util.Collection;
import java.util.Collections;
import java.util.Comparator;


public class SortTwo implements Comparator {
//排序字段
private String sort1;
//排序方式
private int state;
public SortTwo(int state){
this.state=state;
}
public SortTwo(){

}
public int SortUp(Object o1,Object o2){
Student stu=(Student) o1;
Student stu1=(Student) o2;
if(sort1.equals("name")){
if(stu.getName().compareTo(stu1.getName())>1){
return 1;
} else if(stu.getName().compareTo(stu1.getName())<1){
return -1;
}else{
return 0;
}
}
if(sort1.equals("age")){
if(stu.getAge().compareTo(stu1.getAge())>1){
return 1;
} else if(stu.getAge().compareTo(stu1.getAge())<1){
return -1;
}else{
return 0;
}
}
return 0;
}
public int SortDOWN(Object o1,Object o2){
Student stu=(Student) o1;
Student stu1=(Student) o2;
if(sort1.equals("name")){
if(stu.getName().compareTo(stu1.getName())>1){
return -1;
} else if(stu.getName().compareTo(stu1.getName())<1){
return 1;
}else{
return 0;
}
}
if(sort1.equals("age")){
if(stu.getAge().compareTo(stu1.getAge())>1){
return -1;
} else if(stu.getAge().compareTo(stu1.getAge())<1){
return 1;
}else{
return 0;
}
}
return 0;
}
public int compare(Object o1, Object o2) {

if(this.state==1){
return SortUp(o1, o2);
}else{
return SortDOWN(o1, o2);
}
}

/**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Student stu=new Student();
stu.setName("123");
stu.setAge("12");
Student stu1=new Student();
stu1.setName("234");
stu1.setAge("23");
ArrayList<Student>list=new ArrayList<Student>();
list.add(stu);
list.add(stu1);
SortTwo t=new SortTwo(1);
t.sort1="age";
Collections.sort(list,t);
for(Student st : list){
System.out.println(st.getName() +"   "+st.getAge());
}
}

} 
 
分享到:
评论
1 楼 crabdave 2008-05-05  
挺不赖的!

相关推荐

    ASP .NET - ArrayList对象

    ASP.NET中的ArrayList对象是.NET框架中System.Collections命名空间下的一个类,它提供了一个动态大小的数组,用于存储各种类型的数据。ArrayList对象是一个非常基础且灵活的集合类,它允许程序员在运行时添加、删除...

    arrayList排序

    如果ArrayList中的元素是自定义类,并且没有实现Comparable接口,或者需要按照非自然顺序进行排序,可以创建一个Comparator实例,并作为`Collections.sort()`方法的参数。例如,假设有一个User类,我们想要根据姓名...

    基于ArrayList的对象多属性值排序

    接下来,我们可以创建一个ArrayList实例,填充`Student`对象,并使用`Collections.sort()`方法结合自定义的Comparator进行排序: ```java import java.util.ArrayList; import java.util.Collections; import java....

    对arraylist中元素进行排序实例代码

    "ArrayList 元素排序实例代码详解" 本文主要介绍了对ArrayList中元素进行排序的实例代码,通过对util包中的Comparator接口和Collections类的使用实现了ArrayList元素的排序。 首先,需要创建一个Comparator接口的...

    java实现ArrayList根据存储对象排序功能示例

    java实现ArrayList根据存储对象排序功能示例 java实现ArrayList根据存储对象排序功能示例主要介绍了java中ArrayList的排序功能,通过构建新的比较对象Comparator实现排序操作。本文将详细讲解java中ArrayList的相关...

    ArrayList转化为DataTable

    在给定的代码段中,我们看到一个名为`manList`的方法,它的主要任务是将ArrayList对象转换为DataTable对象。这个方法首先创建了一个ArrayList实例`result`和一个DataTable实例`dt`。如果`result`不为空且包含至少一...

    java的arraylist排序示例(arraylist用法)

    在这个示例中,我们将深入探讨如何对ArrayList中的对象进行排序,以及ArrayList的一些基本用法。 首先,我们创建了一个名为`Test`的类,其中包含主方法`main`,这是程序的入口点。在`main`方法中,我们实例化了几个...

    java对象排序

    在Java编程语言中,对象排序是一项常见的操作,特别是在处理数据结构如数组或集合时。`java sort`标签表明我们关注的是使用Java内置的排序机制。本文将深入探讨Java中的对象排序,包括基本概念、API使用以及自定义...

    java对ArrayList排序代码示例

    在main方法中,我们创建了一个`term`对象的ArrayList,并使用`Collections.sort()`方法及自定义的`termComparator`进行排序: ```java List&lt;term&gt; ls = new ArrayList(); ls.add(new term("a", 1)); //...添加其他...

    java中LinkedList任意排序实例

    本实例将探讨如何利用LinkedList以及比较器Comparator实现一个自定义排序的人事信息系统。 首先,我们需要创建一个表示人事信息的类,例如`Employee`,它包含姓名(name)、年龄(age)、身高(height)和职称...

    C#160使用对象ArrayList填充DataGrid 源代码

    然后,我们可以创建一个ArrayList实例,并向其中添加`Employee`对象: ```csharp ArrayList employees = new ArrayList(); employees.Add(new Employee { Name = "张三", Age = 25, Position = "程序员" }); ...

    java教程之二个arraylist排序的示例分享

    本教程将通过两个示例详细讲解如何在Java中对ArrayList中的对象进行排序。 示例1展示了如何根据自定义规则(年龄和姓名)对ArrayList中的`Student`对象进行排序。首先,我们创建了一个包含多个`Student`对象的...

    JAVA 对象数组按照多个属性进行排序

    在Java编程中,对象数组排序是一项常见的任务,特别是在处理复杂数据结构时。当我们需要根据对象的多个属性进行排序时,情况会变得稍微复杂。本文将深入探讨如何在Java中实现这个功能,结合给出的标签“源码”和...

    [线程技术]排序对象

    ` 创建了一个新的 `ArrayList` 对象,用于存储待排序的元素。接着,通过 `for` 循环将输入数组 `o[]` 的每个元素添加到 `ArrayList` 中。这样做的目的是因为 `Collections.sort()` 方法直接对 `List` 接口的实现进行...

    类,对象实例

    C#的System.Collections命名空间提供了多种集合类,如ArrayList、LinkedList、Stack、Queue、HashSet等,用于存储和管理一组对象。 1. **CollectionExample**: 可能是关于泛型集合的示例,如List,它是一个动态大小...

    ASP .NET ArrayList

    ArrayList对象的核心特性包括: 1. 动态大小调整:ArrayList可以自动扩展其容量以适应增加的元素数量。当添加的元素超过现有容量时,ArrayList会自动调整大小,通常是翻倍当前容量。 2. 泛型缺失:ArrayList不支持...

    Listview实例排序

    本实例将深入探讨如何实现ListView的排序功能,即当用户点击ListView的列头时,根据所选列的数据进行升序或降序排列。 首先,我们需要了解ListView的基本结构。ListView由一个Adapter驱动,Adapter负责将数据源(如...

    c# 数组与集合(ArrayList)游戏开发高级使用举例

    同时,为了提高代码的可读性和减少错误,应始终确保引入System.Collections命名空间,并正确实例化ArrayList对象。 在实际应用中,我们可以通过创建一个模拟的游戏场景来演示如何使用数组和ArrayList。例如,可以...

Global site tag (gtag.js) - Google Analytics