iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >java如何根据List内对象的属性进行排序
  • 884
分享到

java如何根据List内对象的属性进行排序

2023-05-30 16:05:09 884人浏览 八月长安
摘要

这篇文章主要介绍了java如何根据List内对象的属性进行排序,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方法一:实现Comparator接口,并重写compare方法实体

这篇文章主要介绍了java如何根据List内对象的属性进行排序,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

方法一:实现Comparator接口,并重写compare方法

实体类代码:

import java.util.Comparator;public class Student implements Comparator<Student>{ private String name; //姓名 private int age; //年龄 //重写 比较方法 本次例子定义为按年龄比较 @Override public int compare(Student o1, Student o2) {  if(o1.getAge() > o2.getAge()){   return 1;  }else{   return -1;  } } public Student(String name, int age) {  super();  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; }}

测试类:

import java.util.ArrayList;import java.util.Collections;import java.util.List;public class Main { public static void main(String[] args) {  //初始化四个不同的学生  Student stu1 = new Student("路人甲", 20);  Student stu2 = new Student("路人已", 18);  Student stu3 = new Student("路人丙", 16);  Student stu4 = new Student("路人丁", 19);  //新建List把学生加进List  List<Student> stuList = new ArrayList<>();  stuList.add(stu1);  stuList.add(stu2);  stuList.add(stu3);  stuList.add(stu4);  System.out.println("排序前:=====");  for(Student stu :stuList){   System.out.println("姓名:"+stu.getName() +" 年龄"+stu.getAge());  }  //排序  Collections.sort(stuList, stu1); //第一个参数为List 第二个参数为对象的一个实例  System.out.println("排序后:=====");  for(Student stu :stuList){   System.out.println("姓名:"+stu.getName() +" 年龄"+stu.getAge());  } }}

运行结果:

java如何根据List内对象的属性进行排序

方法二:实现Comparable接口 并重写compareTo方法

public class Student2 implements Comparable<Student2> { private String name; // 姓名 private int age; // 年龄 // 重写 比较方法 本次例子定义为按年龄比较 @Override public int compareTo(Student2 stu) {  if (this.age > stu.getAge()) {   return 1;  } else {   return -1;  } } public Student2(String name, int age) {  super();  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; }}

测试类

import java.util.ArrayList;import java.util.Collections;import java.util.List;public class Main2 { public static void main(String[] args) {  //初始化四个不同的学生  Student2 stu1 = new Student2("路人甲", 20);  Student2 stu2 = new Student2("路人已", 18);  Student2 stu3 = new Student2("路人丙", 16);  Student2 stu4 = new Student2("路人丁", 19);  //新建List把学生加进List  List<Student2> stuList = new ArrayList<>();  stuList.add(stu1);  stuList.add(stu2);  stuList.add(stu3);  stuList.add(stu4);  System.out.println("排序前:=====");  for(Student2 stu :stuList){   System.out.println("姓名:"+stu.getName() +" 年龄"+stu.getAge());  }  //排序  Collections.sort(stuList); //只有一个参数参数为List  System.out.println("排序后:=====");  for(Student2 stu :stuList){   System.out.println("姓名:"+stu.getName() +" 年龄"+stu.getAge());  } }}

运行结果

java如何根据List内对象的属性进行排序

三、总结:两种方式写法和用法上的区别:

java如何根据List内对象的属性进行排序

感谢你能够认真阅读完这篇文章,希望小编分享的“java如何根据List内对象的属性进行排序”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: java如何根据List内对象的属性进行排序

本文链接: https://www.lsjlt.com/news/219880.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • java如何根据List内对象的属性进行排序
    这篇文章主要介绍了java如何根据List内对象的属性进行排序,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。方法一:实现Comparator接口,并重写compare方法实体...
    99+
    2023-05-30
  • java List<对象> 根据对象的一个属性进行去重
    1.如果你想根据对象的一个属性进行去重,可以使用Java 8中的Stream API。具体步骤如下: 实现一个自定义函数,该函数将用于确定两个对象是否相等,例如: public static Predicate distinctByPro...
    99+
    2023-09-01
    java list
  • 根据list中对象的属性去重和排序小结(必看篇)
    如下所示://去重public class User { private int id; private String name; private int age; public User(){} public...
    99+
    2023-05-31
    java list 对象
  • java8如何根据list对象中的属性过滤筛选
    目录根据list对象中的属性过滤筛选根据性别筛选出所有的女同学list根据对象某个字段或多个字段去重、筛选、List转Map、排序、分组、统计计数等简单示例如下过滤筛选分组去重Lis...
    99+
    2024-04-02
  • php如何根据键对数组进行升序排序
    这篇文章主要介绍了php如何根据键对数组进行升序排序,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。根据键对数组进行升序排序 - ksort(...
    99+
    2024-04-02
  • php如何根据键对数组进行降序排序
    这篇文章给大家分享的是有关php如何根据键对数组进行降序排序的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。根据键对数组进行降序排序 - krsort()下面的例子根据键对关联数组...
    99+
    2024-04-02
  • php如何根据值对数组进行降序排序
    小编给大家分享一下php如何根据值对数组进行降序排序,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!根据值对数组进行降序排序 - ...
    99+
    2024-04-02
  • php如何根据值对数组进行升序排序
    小编给大家分享一下php如何根据值对数组进行升序排序,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!根据值对数组进行升序排序 - ...
    99+
    2024-04-02
  • java怎么给对象按照字符串属性进行排序
    这篇文章主要介绍“java怎么给对象按照字符串属性进行排序”,在日常操作中,相信很多人在java怎么给对象按照字符串属性进行排序问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”java怎么给对象按照字符串属性进...
    99+
    2023-07-04
  • java的list数组按数组中对象的某个属性排序
    在 Java 中,可以使用 Collections.sort() 方法和 Comparator 接口来对 List 中的对象按照对象的某个属性进行排序。以下是一个示例代码: 假设有一个 Person 类,它包含一个 name 字符串属性和一...
    99+
    2023-08-18
    java 开发语言 jvm
  • 使用list stream:对List中的对象先进行排序再获取前n个对象
    目录list stream:对List中的对象先进行排序再获取前n个对象接下来我们就来看一下这个方法通过自定义一个的对象比较方法来进行排序将上面实例中的TestUser对象贴出来对L...
    99+
    2024-04-02
  • 如何使用Collections.reverse对list集合进行降序排序
    目录使用Collections.reverse对list集合进行降序排序Collections.reverse原理使用Collections.reverse对list集合进行降序排序...
    99+
    2024-04-02
  • Java基础之List内元素的排序性能对比
    目录一、概述二、按条件排序几种方案及性能对比2.1 利用集合框架提供的Collections.sort实现排序2.2 实现Comparable接口2.3 利用JAVA 8 strea...
    99+
    2024-04-02
  • Java 中如何对集合进行排序
    Java 中如何对集合进行排序 在 Java 中,集合是一种非常常见的数据结构,它可以用来存储一组元素,而且可以动态地增加或删除元素。在实际的开发中,我们经常需要对集合中的元素进行排序,以便更方便地查...
    99+
    2023-09-25
    java 开发语言
  • java 对象list使用stream根据某一个属性转换成map的几种方式
    可以使用Java 8中的Stream API将List转换为Map,并根据某个属性作为键或值。以下是一些示例代码: 将List转换为Map,键为某个属性,值为对象本身 List personList = ... // 假设这是一个Perso...
    99+
    2023-08-17
    java spring boot stream list
  • Excel如何根据日期进行筛选和排序
    在Excel中,可以使用筛选和排序功能来根据日期进行操作。下面是具体的步骤:筛选:1. 选择包含日期的列。2. 在“数据”选项卡的“...
    99+
    2023-09-16
    excel
  • SQLite中如何对数据进行排序
    在SQLite中,可以使用ORDER BY子句对数据进行排序。可以在SELECT语句中添加ORDER BY子句,后面跟上要排...
    99+
    2024-04-09
    SQLite
  • 根据另一个数组的顺序对数组进行排序 - 对输入
    编程并不是一个机械性的工作,而是需要有思考,有创新的工作,语法是固定的,但解决问题的思路则是依靠人的思维,这就需要我们坚持学习和更新自己的知识。今天编程网就整理分享《根据另一个数组的顺序对数组进行排...
    99+
    2024-04-04
  • 在 PHP 中,如何根据数组值的比较对数组进行排序?
    php 中对数组进行排序的方法有:使用 sort() 函数升序排列。使用 rsort() 函数降序排列。使用 asort() 函数为关联数组升序排列值。使用 arsort() 函数为关联...
    99+
    2024-05-03
    php 数组排序 排列
  • java对时间序列根据阈值进行连续性分片
    问题描述:我需要对一个连续的时间戳list进行分片,分片规则是下一个数据比当前数据要大于某一个阈值则进行分片; 解决方式: 1、输入的有顺序的list ,和需要进行分片的阈值 2、调用方法,填入该排序的list和阈值 private ...
    99+
    2023-08-30
    java 算法
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作