//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-俄罗斯方块 猜数字
|
分享到:
相关推荐
三、List实例详解 以下是一些关于List接口使用的基本示例: ```java import java.util.ArrayList; import java.util.List; public class ListExample { public static void main(String[] args) { // 创建一个...
Java Map的排序实例详解 Java Map是一种常用的数据结构,它可以将键(key)映射到值(value)上。然而,在某些情况下,我们需要对Map中的键值对进行排序,以满足特定的业务需求。例如,在排行榜应用中,我们需要对...
Java 生成随机字符串数组的实例详解是一种常见的编程任务,主要是利用Collections.sort()方法对泛型为String的List进行排序。下面是一个详细的实例详解,介绍了生成随机字符串数组的步骤和相关知识点。 知识点1:...
### Java 中文姓氏排序详解 #### 一、引言 在处理中文数据时,我们经常需要对含有中文姓名的数据进行排序。Java 提供了多种方式进行排序,包括使用 `Collections.sort()` 方法配合自定义比较器(`Comparator`)。...
**Java集合类详解**: 1. **ArrayList**:基于数组实现,提供了随机访问和快速插入删除的能力。适合频繁查询但不常修改的情况。 2. **LinkedList**:基于双向链表实现,添加和删除元素速度快,但随机访问慢。适合...
Java8 Comparator排序方法实例详解 Java8 Comparator排序方法实例详解是Java8中的一种排序方法,它提供了一些静态方法,方便我们进行排序操作。Comparator是一个函数式接口,提供了compare、equals、naturalOrder、...
Java List 比较详解及实例 Java List 比较详解及实例是 Java 编程语言中一个重要的知识点。它主要介绍了 Java List 比较的相关资料,旨在帮助开发者更好地理解和使用 Java List。 一、Java List 比较的难点 Java ...
在文档《Java集合排序及java集合类详解.pdf》中,虽然由于OCR扫描的原因,内容存在一些文字错误和漏识别,但可以推断该文档详细讲解了Java集合类的各个接口以及实现类的特点、用法以及它们之间的区别,并且详细介绍...
使用SPI机制实例详解,我们可以将这个思想扩展开来,客户把自己的排序规则写成一个类,并且打包成Jar文件,这个Jar文件里面必须有META-INF目录,其下又有services目录,其下有一个文本文件,文件名即为接口的全名:...
本文将深入探讨Java集合框架的各个方面,包括Collection、List、Set和Map,以及它们的实现原理和排序机制。 **1. 集合框架概述** 集合框架是Java中的一个容器系统,它允许程序员存储和操作一组对象。集合框架的...
"使用maven构建java9 service实例详解" 本篇文章主要介绍了使用maven构建java9 service实例的详细步骤和解释,以下是相关的知识点总结: 一、Maven的多模块项目结构 Maven是一个基于项目对象模型(Project Object...
【Java经典开发实例源码详解】 Java是一种广泛使用的面向对象的编程语言,以其跨平台、高性能、安全性等特性深受开发者喜爱。"100个Java经典开发实例源码"集合了众多实际应用场景中的代码示例,是学习和提升Java...
在Java编程中,对List元素进行排序是一项常见的操作,特别是在处理数据集合时。本文将详细介绍如何在Java中对List元素进行排序,包括两种主要的方法:使用Comparable接口和Comparator接口。 1. **使用Comparable...
031305_【第13章:Java类集】_排序及重复元素说明笔记.pdf 031306_【第13章:Java类集】_SortedSet接口笔记.pdf 031307_【第13章:Java类集】_Iterator接口笔记.pdf 031308_【第13章:Java类集】_ListIterator接口...
这限制了JVM的指令重排序,但并不意味着`volatile`能提供完全的有序性,只是禁止了线程内部的指令重排,对于跨线程的操作,仍然可能存在重排序。 然而,`volatile`并不是万能的。它无法保证以下几点: - 原子性:...
### 拓扑排序Java实现知识点详解 #### 一、拓扑排序概念 拓扑排序是一种针对有向无环图(DAG)进行排序的方法,主要用于确定任务执行的顺序。在实际应用中,例如项目管理中的任务调度、依赖关系解析等场景下非常...
【Java基础——List接口详解(ArrayList、LinkedList、匿名类)】 在Java编程中,List接口是集合框架的重要组成部分,提供了有序存储元素的功能。ArrayList和LinkedList是List接口的两种主要实现,它们各有优缺点,...
总结来说,`Collection`接口及其子接口`List`和`Set`是Java集合框架的核心,提供了丰富的数据结构和操作方式。了解这些接口和它们的实现类,以及如何正确使用迭代器,对于编写高效、可靠的Java代码至关重要。
在Java中,可以通过实现Comparable接口或者提供自定义的Comparator来定义元素排序的规则。例如,ArrayList或LinkedList可以通过Collections.sort()方法进行排序,HashMap和TreeMap的排序则通过比较器来实现。 总之...