`
gaojingsong
  • 浏览: 1200761 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

【集合对象按照属性排序】

 
阅读更多

源码如下:

import com.crcgas.dp.server.datasource.model.DataSource;

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

class Student {

    private String name;

    private int age;

    public Student(String name, int age) {
        this.name = name;
        this.age = age;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    @Override
public String toString() {
        return "Perosn [name=" + name + ", age=" + age + "]";
    }
}

public class App {

    public static void main(String[] args) {

        List<Student> students = new ArrayList<Student>();

        students.add(new Student("abc", 12));
        students.add(new Student("bcd", 20));
        students.add(new Student("cde", 17));
        students.add(new Student("def", 25));
        students.add(new Student("efg", 15));

        students.sort((x, y) -> Integer.compare(x.getAge(), y.getAge()));

        for (Student stu : students) {
            System.out.println(stu);
        }
        System.out.println("---------------Collections.sort---------------------");
        Collections.sort(students, new Comparator<Student>(){
            @Override
public int compare(Student o1, Student o2) {
                if(o1.getAge() < o2.getAge()){ // “>”号是正序  “<”是倒序  想要根据谁排序 就用对象get出来
return 1;
                }
                if(o1.getAge()==o2.getAge()){
                    return 0;
                }
                return -1;
            }
        });


        for (Student stu : students) {
            System.out.println(stu);
        }
    }
}

运行结果

 

Perosn [name=abc, age=12]

Perosn [name=efg, age=15]

Perosn [name=cde, age=17]

Perosn [name=bcd, age=20]

Perosn [name=def, age=25]

---------------Collections.sort---------------------

Perosn [name=def, age=25]

Perosn [name=bcd, age=20]

Perosn [name=cde, age=17]

Perosn [name=efg, age=15]

Perosn [name=abc, age=12]

分享到:
评论

相关推荐

    java List中对象多属性排序及各属性排序设置

    本文将深入探讨如何在Java的List中对包含多个属性的对象进行排序,并且支持动态设置每个属性的排序方式。这个功能的实现是通过泛型和自定义比较器(Comparator)来完成的,对于复杂的数据排序需求具有很高的灵活性。...

    java版本List中对象多属性排序.rar

    在Java编程中,对List集合中的对象进行多属性排序是一项常见的任务。这通常涉及到自定义比较逻辑,以满足复杂的数据排序需求。在这个“java版本List中对象多属性排序.rar”压缩包中,我们可能找到了一个关于如何在...

    List集合按照对象中某个属性排序通用工具类(按对象中某属性排序)

    在开发中,我们可能会遇到,我们会根据不同情况对一个List集合进行排序操作,为了方便List集合根据对象中的某一个属性进行排序,开发了此工具类:

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

    但是,当需要按照多个属性排序时,我们需要自定义`Comparator`。例如,假设我们有一个`Person`类,包含`firstName`和`lastName`属性,我们想要先按姓氏排序,然后按名字排序: ```java class Person { String ...

    List 对象属性排序

    ### List对象属性排序知识点 #### 一、概述 在Java编程中,经常需要对`List`集合中的对象按照特定属性进行排序。传统的方法是在每个实体类中重写`Comparable`接口或提供比较器(`Comparator`),这不仅增加了代码...

    Java对集合中的对象排序

    对集合中的对象进行排序,例如:List中存放了User对象,则可根据User对象的某一个属性进行顺序or倒序的排序

    java 按对象属性排序

    在Java编程中,按对象属性排序是一个常见的需求,特别是在数据处理和数据分析的场景下。这里我们探讨的主题是如何根据对象的属性进行排序,结合提供的`Simple.java`和`User.java`文件,我们可以假设这是一个关于...

    List集合对象中按照不同属性大小排序的实例

    List集合对象中按照不同属性大小排序的实例 List集合对象中按照不同属性大小排序是java编程中的一种常见操作。下面我们就来详细介绍如何使用java的Collections.sort()方法对List集合对象按照不同属性大小排序。 ...

    集合对象排序

    在编程领域,集合对象排序是一项基础且重要的任务,它涉及到数据结构和算法的知识。当我们处理包含多个元素的数据集,如数组、列表或集合时,排序能够帮助我们快速查找、分析和展示信息。本文将深入探讨如何对对象...

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

    在编程领域,尤其是在Java或类似的面向对象语言中,经常需要处理列表(List)数据结构,并根据对象中的特定属性...在实际开发中,根据对象属性排序是一种常见的需求,熟练掌握这一技巧对于提升代码质量与效率至关重要。

    Java实现储存对象并按对象某属性排序的几种方法示例

    以上三种方法都能满足按对象属性排序的需求,选择哪种取决于具体的应用场景。如果需要保持集合的有序性,`TreeSet`是很好的选择;如果数据存储在数组中,`Arrays.sort()`简洁高效;而`List`的使用者则可以利用`...

    根据对象属性将对象排序

    ### 根据对象属性将对象排序 在编程领域中,我们经常会遇到需要对一组对象进行排序的需求。这种排序可以基于单个属性或者多个属性来进行。本文档将详细讲解如何通过对象的一个或多个属性来实现对象的排序,并支持...

    C#实体类和实体类集合的自动排序

    通过设置其DataSource属性为实现了上述接口的实体类集合,用户可以直接在界面上进行排序操作。 实现这些接口的过程可能涉及到以下步骤: 1. 创建实体类,定义相应的属性。 2. 创建实体类集合类,实现IBindingList...

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

    本主题将深入探讨如何对ArrayList中的对象按照多个属性进行排序。 首先,我们来看`Student.java`类,它通常会包含一个或多个属性,比如学生的姓名(name)、学号(id)或其他信息。例如: ```java public class ...

    对象集合与对象组合

    对象集合的使用使得我们可以方便地处理大量对象,同时也可以通过集合类提供的方法实现对对象的排序、筛选等操作。对象集合的概念在实际开发中广泛应用于数据存储、图形用户界面组件管理、网络通信等多种场景。 **...

    java根据List内对象的属性排序方法

    "java根据List内对象的属性排序方法" java根据List内对象的属性排序方法是java编程语言中的一种常见且重要的操作。排序是指将一个或多个对象按照某种规则或顺序排列的过程。在java中,List是一个常用的数据结构,...

    Java中List集合对象去重及按属性去重的8种方法

    【Java中List集合对象去重及按属性去重的8种方法】 在Java编程中,当我们处理包含重复元素的List时,有时需要去除其中的重复项。以下文章将详细介绍8种针对List集合对象去重的方法,包括基于对象整体以及按特定属性...

Global site tag (gtag.js) - Google Analytics