`

Collections.sort

    博客分类:
  • Java
阅读更多

 

 

   Java 基础小知识: Collections.sort() 方法的使用:

  (参考网上的例子)

 

  1 、 User类

public class User implements Comparable<User>{

	private String name;
	private Integer order;
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getOrder() {
		return order;
	}
	public void setOrder(Integer order) {
		this.order = order;
	}
	@Override
	public int compareTo(User o) {
		return this.getOrder().compareTo(o.getOrder());
	}

}

     Test:

 

public class Test {

	public static void main(String[] args) {
		User user1 = new User();
		user1.setName("aaa");
		user1.setOrder(2);
		
		User user2 = new User();
		user2.setName("bbb");
		user2.setOrder(1);
		
		List<User> list = new ArrayList<User>();
		list.add(user1);
		list.add(user2);
		
		Collections.sort(list);
		
		for(User u : list){
			System.out.println(u.getOrder()+"--->"+u.getName());
		}
	}
}

 

 

 

2、另一种方式

 

   User 类

 

 

public class User {

	private String name;
	private Integer order;
	private Integer count;
	
	public String getName() {
		return name;
	}
	public void setName(String name) {
		this.name = name;
	}
	public Integer getOrder() {
		return order;
	}
	public void setOrder(Integer order) {
		this.order = order;
	}
	public Integer getCount() {
		return count;
	}
	public void setCount(Integer count) {
		this.count = count;
	}
	
}

 

   Test类:

 

public class Test {

	public static void main(String[] args) {
		 
		User user1 = new User();
		user1.setName("aaa");
		user1.setOrder(2);
		user1.setOrder(30);
		
		User user2 = new User();
		user2.setName("bbb");
		user2.setOrder(1);
		user2.setCount(40);
		
		User user3 = new User();
		user3.setName("ccc");
		user3.setOrder(1);
		user3.setCount(50);
		
		List<User> list = new ArrayList<User>();
		list.add(user1);
		list.add(user2);
		list.add(user3);
		
		Collections.sort(list ,new Comparator<User>() {
			@Override
			public int compare(User o1, User o2) {
				int i = o1.getOrder().compareTo(o2.getOrder());
				if(i==0){
					return o2.getCount().compareTo(o1.getCount());
				}else{
					return i;
				}
			}
		});
		
		for(User u : list){
			System.out.println(u.getOrder()+"--->"+u.getName());
		}
	}
}

 

 

  学习了、记录下.. 嘻嘻

分享到:
评论

相关推荐

    java List 排序 Collections.sort

    当我们需要对List中的元素进行排序时,`Collections.sort()`方法就派上了用场。这个方法能够根据元素的自然顺序或者自定义的比较器进行排序。本文将深入探讨`Collections.sort()`的使用、原理以及如何自定义排序规则...

    java中Collections.sort排序详解

    Java中Collections.sort排序详解 Java中的Collections.sort排序是Java.util.Collections类中的一个静态方法,用于对列表进行排序。下面将详细介绍Collections.sort排序的使用和实现机制。 Collections.sort()方法...

    Java Arrays.sort和Collections.sort排序实现原理解析

    Java中的`Arrays.sort()`和`Collections.sort()`是两个常用的排序函数,它们分别用于对数组和集合进行排序。这两个函数在内部实现上有所不同,但都基于高效的排序算法。 首先,`Collections.sort()`方法在处理列表...

    Java Collections.sort()实现List排序的默认方法和自定义方法

    Java Collections.sort()实现List排序的默认方法和自定义方法 Java Collections.sort()是Java语言中用于对List进行排序的方法,通过使用这个方法可以对List进行默认排序,也可以根据需要实现自定义的排序规则。 ...

    JAVA对list集合进行排序Collections.sort()

    在Java编程语言中,`Collections.sort()` 方法是一个非常重要的工具,用于对List接口实现的集合进行排序。这个方法使得开发者能够方便地按照指定的顺序排列集合中的元素。本篇文章将详细探讨如何使用 `Collections....

    java中Collections.sort排序函数用法详解

    在Java编程语言中,`Collections.sort()` 是一个非常重要的函数,它用于对集合中的元素进行排序。这个函数是 `java.util.Collections` 类的一个静态方法,适用于列表(List)类型的集合。`Collections.sort()` 可以...

    详解Java中Collections.sort排序

    在Java编程语言中,`Collections.sort()`方法是一个非常重要的工具,它用于对集合中的元素进行排序。这个方法主要应用于`List`接口的实现类,如`ArrayList`和`LinkedList`等。`Collections.sort()`有两种主要的排序...

    Java Collections.sort()排序代码案例

    Java Collections.sort() 排序代码案例 Java Collections.sort() 排序代码案例是 Java Collections 框架中一个非常重要的排序算法,通过本文,我们将深入探讨 Java Collections.sort() 排序代码案例的实现细节,并...

    详解java Collections.sort的两种用法

    Java Collections.sort 的两种用法详解 Java Collections.sort 是 Java 集合框架中的一种静态方法,用于对 List 类型进行排序。该方法有两种参数形式,分别是对基本类型和自定义类的排序。在本文中,我们将通过示例...

    用Java集合中的Collections.sort方法如何对list排序(两种方法)

    在Java编程中,集合框架是处理数据的重要工具,而Collections.sort方法则是对列表(List)进行排序的关键函数。本文将深入探讨两种使用Collections.sort方法对List排序的方法。 首先,第一种方法是让List中的对象实现...

    listview按序排列显示

    在这个场景下,我们使用`Collections.sort()`函数对一个包含Map对象的List进行排序,然后将排序后的数据适配到ListView中。以下是关于这个主题的详细解释。 **一、Map与List的关系** 在Java中,Map是一种键值对的...

    金陵科技学院软件院大二上Java高级1215Collections.docx

    在这个文档中,我们主要关注`Collections`类中的一些核心方法的使用,包括`reverse()`, `sort()`, `shuffle()`, `swap()`, `replaceAll()`, `max()`, `min()`以及`frequency()`。 1. **`Collections.reverse(List...

    JAVA中Collections工具类sort()排序方法

    在Java编程中,Collections工具类提供了许多方便的集合操作,其中`sort()`方法是一个非常重要的功能,用于对List类型的集合进行排序。本文将详细介绍`Collections.sort()`方法的两种使用方式及其示例。 ### 一、...

    Collections

    * `Collections.sort(List&lt;T&gt; list, Comparator&lt;? super T&gt; c)`: 对列表进行自定义排序。 线程安全操作 Collections 中的线程安全操作方法包括同步和不可变集合。这些方法用于保证集合的线程安全。 * `...

    Java Collections.pdf

    例如,Collections.sort()方法可以对List进行排序,而Collections.synchronizedXXX()方法则可以帮助我们创建线程安全的集合。 在实际开发中,选择合适的集合类型和方法至关重要。例如,当我们需要保持元素插入顺序...

    Java Generics and Collections.chm

    例如,`Collections.sort()` 可用于对列表进行排序,`Map.merge()` 可以原子性地更新键值对。 通过深入学习《Java Generics and Collections》,开发者不仅可以掌握如何编写类型安全的代码,还能有效地组织和操作...

    吐血推荐17个提升开发效率的“轮子”.doc

    1. 排序:Collections.sort() 方法可以实现升序和降序排序。 例如: List list = new ArrayList(); list.add(2); list.add(1); list.add(3); Collections.sort(list);//升序 System.out.println(list); Collections...

    集合工具类Collections的基本应用

    例如,对整型ArrayList进行升序排序可以使用`Collections.sort(list)`。 2. **查找**: - `binarySearch(List&lt;? extends Comparable&lt;? super T&gt;&gt; list, T key)`: 对于已经排序的List,这个方法可以使用二分查找法...

    java 使用Collections类对List的排序操作

    除了 `Collections.sort()`,还有 `Collections.reverseOrder()` 方法,它可以创建一个降序排列的 `Comparator` 实例,用于定制排序。 ```java List&lt;Integer&gt; numbers = new ArrayList(Arrays.asList(1, 3, 2, 4));...

    77丨开源实战一(下):通过剖析JavaJDK源码学习灵活应用设计模式1

    在本节课程中,我们将深入探讨模板模式以及其在Java JDK中的实际应用,特别是通过分析Collections.sort()函数的实现。模板模式是一种行为设计模式,它允许我们在定义算法的骨架的同时,延迟部分步骤的具体实现,使得...

Global site tag (gtag.js) - Google Analytics