`

对对象的某些属性进行排序

阅读更多
package test.user.taojq;

import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
import java.util.List;

class User {
	 String name;
	 String age;
	 
	 public User(String name,String age){
	  this.name=name;
	  this.age=age;
	 }
	 public String getAge() {
	  return age;
	 }
	 public void setAge(String age) {
	  this.age = age;
	 }
	 public String getName() {
	  return name;
	 }
	 public void setName(String name) {
	  this.name = name;
	 } 
}
//测试类
public class SortTest {

 
 public static void main(String[] args){
  List userlist=new ArrayList();
  userlist.add(new User("dd","4"));
  userlist.add(new User("aa","1"));
  userlist.add(new User("ee","5"));
  userlist.add(new User("bb","2"));  
  userlist.add(new User("ff","5"));
  userlist.add(new User("cc","3"));
  userlist.add(new User("gg","6"));
  
//  ComparatorUser comparator=new ComparatorUser();
//  Collections.sort(userlist, comparator);
   
  Collections.sort(userlist, new Comparator<User>(){
	  public int compare(User user0, User user1) {
		  int flag=user0.getAge().compareTo(user1.getAge());
		  if(flag==0){
		   return user0.getName().compareTo(user1.getName());
		  }else{
		   return flag;
		  }  
	   }
  });
  for (int i=0;i<userlist.size();i++){
   User user_temp=(User)userlist.get(i);
      System.out.println(user_temp.getAge()+","+user_temp.getName()); 
  }
  
 }
}
分享到:
评论

相关推荐

    js对象属性排序

    然而,在某些场景下,我们可能需要对对象的属性进行排序,比如为了输出格式化或者处理特定逻辑。本篇文章将深入探讨JavaScript对象属性排序的原理、方法以及注意事项。 首先,了解JavaScript对象的基本特性是至关...

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

    总结一下,当需要对Java对象数组按多个属性排序时,我们可以: 1. 实现`Comparator`接口并自定义`compare()`方法。 2. 使用lambda表达式或方法引用来创建`Comparator`实例,使代码更加简洁。 3. 对于数组,使用`...

    List中保存对象,按对象中某一属性排序【含程序源码】

    这篇博客“List中保存对象,按对象中某一属性排序【含程序源码】”恰好提供了这样的解决方案。下面我们将深入探讨这个主题。 首先,让我们理解列表(List)和对象排序的基本概念。列表是Java集合框架的一部分,它允许...

    java中对单层json进行key字母排序

    `java中对单层json进行key字母排序`的标题指出了我们需要对一个单层JSONObject的键进行字母升序排序。描述提到这个资源可以直接在程序中使用,意味着提供了一个功能函数来实现这一操作。 在提供的代码中,可以看到...

    Java面向对象思想的排序方法

    在排序场景中,可以设计一个通用的排序方法,接受`Sortable`类型的参数,这样就可以对任何实现了`Sortable`的类进行排序,无论具体的排序算法是什么。 接下来,我们将分别介绍几种常见的排序算法: 1. 冒泡排序:...

    简单的职工管理系统

    包括源程序和课程设计报告 简单的职工管理系统 1.问题描述  对单位的职工进行管理,包括插入、删除、查找、...(4)修改:检索某个职工对象,对其某些属性进行修改。 (5)排序:按某种需要对职工对象文件进行排序。

    对map里面的value进行排序

    然而,有时我们需要对Map中的值进行排序,例如按照value的大小进行升序或降序排列。这篇博客"对map里面的value进行排序"探讨的就是如何实现这一需求。 首先,我们了解Map接口的基本概念。Map接口不直接支持排序,...

    java对象排序

    在Java中,我们可以对两种类型的元素进行排序:原始类型(如int、char)和对象。对于对象,排序主要涉及到`Comparable`接口和`Comparator`接口。 - **Comparable接口**:如果一个类的实例需要被排序,那么该类应该...

    数据结构课程设计 职工管理系统 c语言代码

    (4)修改:检索某个职工对象,对其某些属性进行修改。 (5)排序:按某种需要对职工对象文件进行排序。 1.3实现提示  职工对象数不必很多,便于一次读入内存,所有操作不经过内外存交换。 (1)由键盘输入职工对象...

    Java中实现参数名ASCII码从小到大排序(字典序).doc

    在Java编程中,有时我们需要对一组参数按照字典顺序(ASCII码值从小到大)进行排序,例如在创建签名或构建URL查询字符串时。这里提供了一个名为`createSign`的方法,它接受一个`Map, Object&gt;`类型的参数,并返回一个...

    SuperObject增加排序.rar

    这个压缩包"SuperObject增加排序.rar"提供了对SuperObject的一个扩展,增加了排序功能,使得在处理JSON对象时能按照特定顺序显示属性,从而提高可读性。 SuperObject原本的设计允许快速、动态地创建和解析JSON对象...

    javascript表格排序案例(面向对象)案例资料

    6. **多列排序**:在某些情况下,用户可能希望根据多个列进行排序。这需要扩展`sort`方法以处理多个排序条件。可以将多个列的排序规则作为数组传递,按照优先级进行排序。 通过以上步骤,你将能够构建一个功能完善...

    PB数据窗口的排序

    数据窗口排序功能允许用户根据特定字段对数据显示进行升序或降序排列,提供了灵活的数据组织方式,极大地提高了数据处理的效率和用户体验。 在PB中,数据窗口的排序主要有以下几种方式: 1. **内置排序**:这是最...

    ArcEngine 属性表操作

    2. **属性排序**:ArcEngine提供了多种方式对属性表进行排序。你可以使用`IFeatureClass.Search`方法,配合`IQueryFilter`对象设置排序字段和排序方式。`IQueryFilter.SortFields`属性可以添加多个排序字段,每个...

    js分页+列表排序+属性显示

    列表排序允许用户按照特定字段对数据显示进行升序或降序排列。在JavaScript中,可以使用数组的`sort()`方法,配合自定义比较函数来实现。比较函数接收两个参数,返回值决定了排序顺序。例如,对于数字列表,可以...

    课程设计-基于C语言的职工管理系统(源码+exe可执行程序+报告).zip

    a.对单位的职工进行管理,包括插入、删除、查找、排序等功能。 b.系统能实现的操作和功能如下: ...(4)修改:检索某个职工对象,对其某些属性进行修改; (5)排序:按某种需要对职工对象文件进行排序。

    C# List OrderBy 动态多字段排序

    在上述代码中,`p =&gt; p.Age` 就是一个Lambda表达式,它告诉`OrderBy`按Person对象的Age属性进行排序。 然而,当我们需要根据多个字段进行排序时,可以连续调用`ThenBy`方法。例如,先按年龄排序,再按姓名排序: `...

    vb动态排序vb动态排序

    4. **自定义比较**:VB允许我们提供自定义的比较函数,以便按照特定规则进行排序,如按字符串长度或自定义对象属性排序。 在提供的压缩包文件"成功(美化)"中,可能包含了使用VB实现的动态排序的示例代码或者美化过...

    超级列表框数据库排序

    5. **多列排序**:在某些情况下,用户可能希望对多个列进行排序。在这种情况下,需要维护一个排序优先级列表,每次点击列头时,根据当前列在列表中的位置来确定是否改变排序方向或调整优先级。 6. **异步排序**:...

Global site tag (gtag.js) - Google Analytics