`
chasewade
  • 浏览: 14369 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
最近访客 更多访客>>
社区版块
存档分类
最新评论

java List 排序实例详解

    博客分类:
  • J2se
阅读更多

//1.新建一个实体类User

public class User {
	String name;
	Integer age;
	
	public User(String name, Integer age) {
		super();
		this.age = age;
		this.name = name;
	}
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getAge() {
		return age;
	}
	public void setAge(Integer age) {
		this.age = age;
	}
	
	
}
 

//2.具体的比较类,实现Comparator接口

 

import java.util.Comparator;

/** 
 * @version 创建时间:2011-10-17   上午09:52:28
 * 类说明 
 */

public class ComparatorUser implements Comparator {

	@Override
	 //首先比较年龄,如果年龄相同,则比较名字
	public int compare(Object o1, Object o2) {
		User user1 = (User)o1;
		User user2 = (User)o2;
		 
		int flag = (user1.getAge()).compareTo(user2.getAge());
		if (flag == 0) {
			return user1.getName().compareTo(user2.getName());
		} else {
			return flag;
		}		
	}
}
 

 

//3.排序测试类

 


package com.comparator;

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

public class SortTest {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		List<User> userlist = new ArrayList<User>();
		userlist.add(new User("aa",4));
		userlist.add(new User("dd",8));
		userlist.add(new User("cc",3));
		userlist.add(new User("ff",4));
		userlist.add(new User("bb",41));
		userlist.add(new User("jj",1));
		userlist.add(new User("nn",5));
		
		ComparatorUser comparatorUser = new ComparatorUser();
		Collections.sort(userlist, comparatorUser);
		
		for (User user : userlist) {
			System.out.println(user.getAge()+"*****"+user.getName());
		}
//		for (int i=0; i<userlist.size(); i++) {
//			User user_temp = (User)userlist.get(i);
//				System.out.println(user_temp.getAge() + "====" + user_temp.getName());
//		}
	}

}

 

来源:http://www.dream-chase.com


java List 排序实例详解         java环境变量配置

Java 获取路径                       Chase_Java容器遍历的方法

java入门                                 Java菱形

Java倒三角                           Java九九乘法表

java-俄罗斯方块                   猜数字

分享到:
评论

相关推荐

    java中List的用法和实例详解

    三、List实例详解 以下是一些关于List接口使用的基本示例: ```java import java.util.ArrayList; import java.util.List; public class ListExample { public static void main(String[] args) { // 创建一个...

    Java Map的排序实例详解

    Java Map的排序实例详解 Java Map是一种常用的数据结构,它可以将键(key)映射到值(value)上。然而,在某些情况下,我们需要对Map中的键值对进行排序,以满足特定的业务需求。例如,在排行榜应用中,我们需要对...

    Java 生成随机字符串数组的实例详解

    Java 生成随机字符串数组的实例详解是一种常见的编程任务,主要是利用Collections.sort()方法对泛型为String的List进行排序。下面是一个详细的实例详解,介绍了生成随机字符串数组的步骤和相关知识点。 知识点1:...

    java 中文姓氏 排序

    ### Java 中文姓氏排序详解 #### 一、引言 在处理中文数据时,我们经常需要对含有中文姓名的数据进行排序。Java 提供了多种方式进行排序,包括使用 `Collections.sort()` 方法配合自定义比较器(`Comparator`)。...

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

    **Java集合类详解**: 1. **ArrayList**:基于数组实现,提供了随机访问和快速插入删除的能力。适合频繁查询但不常修改的情况。 2. **LinkedList**:基于双向链表实现,添加和删除元素速度快,但随机访问慢。适合...

    Java8 Comparator排序方法实例详解

    Java8 Comparator排序方法实例详解 Java8 Comparator排序方法实例详解是Java8中的一种排序方法,它提供了一些静态方法,方便我们进行排序操作。Comparator是一个函数式接口,提供了compare、equals、naturalOrder、...

    java list 比较详解及实例

    Java List 比较详解及实例 Java List 比较详解及实例是 Java 编程语言中一个重要的知识点。它主要介绍了 Java List 比较的相关资料,旨在帮助开发者更好地理解和使用 Java List。 一、Java List 比较的难点 Java ...

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

    在文档《Java集合排序及java集合类详解.pdf》中,虽然由于OCR扫描的原因,内容存在一些文字错误和漏识别,但可以推断该文档详细讲解了Java集合类的各个接口以及实现类的特点、用法以及它们之间的区别,并且详细介绍...

    Java的SPI机制实例详解

    使用SPI机制实例详解,我们可以将这个思想扩展开来,客户把自己的排序规则写成一个类,并且打包成Jar文件,这个Jar文件里面必须有META-INF目录,其下又有services目录,其下有一个文本文件,文件名即为接口的全名:...

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

    本文将深入探讨Java集合框架的各个方面,包括Collection、List、Set和Map,以及它们的实现原理和排序机制。 **1. 集合框架概述** 集合框架是Java中的一个容器系统,它允许程序员存储和操作一组对象。集合框架的...

    使用maven构建java9 service实例详解

    "使用maven构建java9 service实例详解" 本篇文章主要介绍了使用maven构建java9 service实例的详细步骤和解释,以下是相关的知识点总结: 一、Maven的多模块项目结构 Maven是一个基于项目对象模型(Project Object...

    100个Java经典开发实例源码

    【Java经典开发实例源码详解】 Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能、安全性等特性深受开发者喜爱。"100个Java经典开发实例源码"集合了众多实际应用场景中的代码示例,是学习和提升Java...

    Java中对list元素进行排序的方法详解

    在Java编程中,对List元素进行排序是一项常见的操作,特别是在处理数据集合时。本文将详细介绍如何在Java中对List元素进行排序,包括两种主要的方法:使用Comparable接口和Comparator接口。 1. **使用Comparable...

    Java开发详解.zip

    031305_【第13章:Java类集】_排序及重复元素说明笔记.pdf 031306_【第13章:Java类集】_SortedSet接口笔记.pdf 031307_【第13章:Java类集】_Iterator接口笔记.pdf 031308_【第13章:Java类集】_ListIterator接口...

    violate java-Java 之 volatile 超级详解

    这限制了JVM的指令重排序,但并不意味着`volatile`能提供完全的有序性,只是禁止了线程内部的指令重排,对于跨线程的操作,仍然可能存在重排序。 然而,`volatile`并不是万能的。它无法保证以下几点: - 原子性:...

    拓扑排序java实现

    ### 拓扑排序Java实现知识点详解 #### 一、拓扑排序概念 拓扑排序是一种针对有向无环图(DAG)进行排序的方法,主要用于确定任务执行的顺序。在实际应用中,例如项目管理中的任务调度、依赖关系解析等场景下非常...

    java基础--list(ArrayList、LinkedList、匿名类).docx

    【Java基础——List接口详解(ArrayList、LinkedList、匿名类)】 在Java编程中,List接口是集合框架的重要组成部分,提供了有序存储元素的功能。ArrayList和LinkedList是List接口的两种主要实现,它们各有优缺点,...

    java 的Collection接口实例详解

    总结来说,`Collection`接口及其子接口`List`和`Set`是Java集合框架的核心,提供了丰富的数据结构和操作方式。了解这些接口和它们的实现类,以及如何正确使用迭代器,对于编写高效、可靠的Java代码至关重要。

    Java集合详解

    在Java中,可以通过实现Comparable接口或者提供自定义的Comparator来定义元素排序的规则。例如,ArrayList或LinkedList可以通过Collections.sort()方法进行排序,HashMap和TreeMap的排序则通过比较器来实现。 总之...

Global site tag (gtag.js) - Google Analytics