`
ll_feng
  • 浏览: 389410 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

java中对象集合的比较与排序

    博客分类:
  • j2se
 
阅读更多
现种方式。一是对象本身直接实现Comparable接口
class Student implements Comparable{
	private int age;
	
	private String name;
	
	
	//实现Comparable接口方法
	public int compareTo(Object o){
		Student s = (Object)o;
		//当前对象的值大于被比较的对象值返回正数据,等于被比较对象的值返回0,小于被比较对象的值返回负数
		return age>s.age ? 1 : (age=s.age ? 0 :-1);
	}
}

另一种是借助比较器对象,这个比较器对象针对指定的类来定义。并实现Comparator接口
class Student{
	private int age;
	
	private String name;
	
	//可以通过内部类实现一个类型的比较器
	static class StudentComparator implements Comparator<Student>{
		public int compare(Student s1, Student s2){
			return s1.age>s2.age ? 1 : (s1.age=s2.age ? 0 : -1);
		}
	}
}


最后借助Conections.sort(),或ArrayList的sort()方来比较
Colections.sort(studentList, new Student.StudentComparator());
分享到:
评论

相关推荐

    java 集合分组与排序

    下面我们将深入探讨如何在Java中实现集合的分组与排序。 1. **集合分组**: 集合分组通常涉及到`GroupingBy`操作,这在Java 8引入的流(Stream)API中得到了很好的支持。`Collectors.groupingBy`方法允许我们将...

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

    在Java编程中,排序是常见的数据处理操作,特别是在处理集合数据结构时,如List。本文将深入探讨如何在Java的List中对包含多个属性的对象进行排序,并且支持动态设置每个属性的排序方式。这个功能的实现是通过泛型和...

    java中进行集合排序

    ### Java中进行集合排序 在Java编程中,对集合(如`List`)中的对象进行排序是一项常见的操作。本文将详细介绍如何根据对象的特定属性来实现升序或降序排序。 #### 标题:Java中进行集合排序 该标题表明文章的...

    Java对集合中的对象排序

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

    java集合某个字段按照中文拼音排序.docx

    Java集合某个字段按照中文拼音排序是Java开发中经常遇到的问题。对Java集合中的某个字段按照中文拼音排序可以使用多种方法,本文将介绍两种常见的方法。 方法一:使用Comparable接口 在Java中,我们可以使用...

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

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

    Java集合排序及java集合类详解

    在Java集合排序方面,我们主要关注List和Map。对于List,可以使用Collections.sort()方法进行排序,这个方法默认使用元素的自然顺序,如果元素是自定义对象,需要实现Comparable接口或者提供Comparator。对于Map,...

    Java集合排序及java集合类详解.pdf

    ### Java集合排序及Java集合类详解 #### 一、集合框架概述 集合框架是Java编程语言的核心组件之一,用于组织和操作数据集。Java集合框架提供了多种数据结构,包括列表(List)、集(Set)和映射(Map),这些数据结构...

    java 对象集合小例子.

    在Java编程语言中,对象集合是程序设计中不可或缺的一部分,它们允许我们存储和管理各种类型的对象。本篇文章将深入探讨Java中的几个主要对象集合:Hashtable、Vector、LinkedList以及数组和集合的基本概念。 首先...

    java 按对象属性排序

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

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

    对于多属性排序,可以在`compareTo()`方法中比较多个属性。 以下是实现多属性排序的基本步骤: 1. **创建Comparator**:定义一个实现`Comparator`接口的匿名内部类或者单独的类,重写`compare()`方法。在`compare...

    java中集合排序

    本文将深入探讨Java中集合排序的相关知识点,包括基本概念、排序方法以及常用类的实现。 1. **集合接口与实现** Java集合框架主要包括`List`, `Set`, 和 `Map`三大接口。其中,`List`接口要求元素有序,允许重复;...

    java中Map集合的排序方法

    HashMap的应用实例 ...2,当向HashMap中put一对键值时,它会根据key的hashCode值计算出一个位置,该位置就是此对象准备往数组中存放的位置。 HashMap应用举例:控制台输入一句英语,简单统计各个单词出现的次数

    java 中文姓氏 排序

    本文将详细介绍如何在 Java 中对包含中文姓氏的对象列表或字符串列表进行排序。 #### 二、基本概念 1. **Collator 类**:这是 Java 中用于文本排序和检索的标准类。`Collator` 类提供了与语言环境相关的字符串排序...

    Java 对象排序详解.rar_java 对象排序_对象_排序

    在Java编程语言中,对象排序是一项关键操作,特别是在处理集合数据结构时。本文将深入探讨如何对ArrayList、HashSet、TreeSet以及数组中的对象进行排序。理解这些排序机制对于编写高效且可维护的代码至关重要。 ...

    java集合对象

    在Java编程中,集合对象是一种非常重要的数据结构,它主要用于存储和操作多个数据项。与数组相比,集合对象提供了更多的灵活性和功能,例如动态调整大小的能力以及更为丰富的操作方法。根据其特性不同,集合主要分为...

    Java对象排序中文排序SortedSet排序使用和源码讲

    本主题将深入探讨如何使用SortedSet接口来实现Java对象的中文排序,并通过源码分析理解其工作原理。 首先,SortedSet是Java集合框架中的一个接口,它继承自Set接口并添加了排序的特性。SortedSet的主要实现类有...

Global site tag (gtag.js) - Google Analytics