`

JAVA对List列表排序

阅读更多
NewsManager.java

package test;

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

public class NewsManager {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		List newss = getNewsList();
		for (int i = 0; i < newss.size(); i++) {
			News news = (News) newss.get(i);
//			System.out.println("id:" + news.getId());
			System.out.println("title:" + news.getTitle());
//			System.out.println("hits:" + news.getHits());
		}
	}

	@SuppressWarnings("unchecked")
	public static List getNewsList() {
		List list = new ArrayList();

		News news1 = new News();
		news1.setHits(1);
		news1.setId(1);
		news1.setTitle("2017年07月31日 18:39");
		list.add(news1);

		News news2 = new News();
		news2.setHits(7);
		news2.setId(2);
		news2.setTitle("2017年07月31日 12:54");
		list.add(news2);

		News news3 = new News();
		news3.setHits(3);
		news3.setId(3);
		news3.setTitle("2017年07月31日 13:04");
		list.add(news3);

		News news4 = new News();
		news4.setHits(5);
		news4.setId(4);
		news4.setTitle("2017年07月31日 12:49");
		list.add(news4);

		// 按点击数倒序
		Collections.sort(list, new Comparator<News>() {
			public int compare(News arg0, News arg1) {
				String hits0 = arg0.getTitle();
				String hits1 = arg1.getTitle();
				if (hits1.compareTo(hits0) > 0) {
					return 1;
				} else if (hits1.compareTo(hits0) == 0) {
					return 0;
				} else {
					return -1;
				}
			}
		});
		return list;
	}
}

==========================================================
News.java

package test;

public class News {
	private int id;
	private String title;
	private int hits;
	public int getId() {
		return id;
	}
	public void setId(int id) {
		this.id = id;
	}
	public String getTitle() {
		return title;
	}
	public void setTitle(String title) {
		this.title = title;
	}
	public int getHits() {
		return hits;
	}
	public void setHits(int hits) {
		this.hits = hits;
	}
}
分享到:
评论

相关推荐

    java中list排序

    Java 中 List 排序是指在数据库中查出来的列表中对不同的字段重新排序。一般的做法都是使用排序的字段,重新到数据库中查询。如果不到数据库查询,直接在第一次查出来的 List 中排序,无疑会提高系统的性能。这样...

    list集合树状排序-java

    在本场景中,我们需要对List中的对象进行排序,这些对象通常包含表示层级关系的属性,如父ID、子节点列表等。 接下来,我们要解决的是“树状排序”。树状排序,或称为树形排序,是指将具有树结构的数据进行排序。在...

    Java对List多个排序、查询条件的处理

    在Java编程中,对List进行多个排序和查询条件的处理是一项常见的任务,特别是在处理数据集合时。本篇文章将深入探讨如何使用Java实现这些操作,并基于给出的`GroupFilterSortUtils.java`文件,我们可以推断这是一个...

    java 集合分组与排序

    它直接在原地对列表进行排序,无需额外的流处理。例如: ```java List&lt;Person&gt; people = ...; Collections.sort(people, Comparator.comparing(Person::getName)); ``` - 流API的`sorted()`:适用于任何可...

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

    总的来说,`Collections` 类提供的排序功能使得在 Java 中对 `List` 进行操作变得更加便捷,无论是自然排序还是定制排序,都可以轻松实现。同时,随着 Java 8 及更高版本的引入,流API也提供了新的排序方式,开发者...

    java中List对象列表实现去重或取出及排序的方法

    在Java中,对List对象列表实现去重或取出及排序是一种常见的操作。下面将详细介绍相关的方法和实现。 1. 实体类重写equals和hashCode方法 在Java中,想要去重List对象列表,首先需要重写实体类的equals和hashCode...

    java List 排序 Collections.sort

    总结起来,`Collections.sort()`是Java中对List进行排序的标准工具,它支持自然排序和自定义排序。了解其工作原理和优化技巧,可以帮助我们在编程实践中更高效地处理数据。通过阅读和理解`Collections.sort()`的源码...

    最快的排序算法 java最快的排序-在Java中对列表进行排序的最快方法,排序算法数据结构

    在 Java 中,对列表进行排序的最快方法是使用Collections.sort()方法,该方法使用的排序算法是 Timsort,它是归并排序和插入排序的结合体,具有高效的性能和稳定性。 在上述代码中,使用了 Comparator 接口来实现...

    java使用stream对日期排序

    假设我们有一个`LocalDate`对象的列表`List&lt;LocalDate&gt; dates`,可以使用以下步骤进行排序: ```java List&lt;LocalDate&gt; sortedDates = dates.stream() .sorted(Comparator.naturalOrder()) .collect(Collectors...

    java List排序demo

    在Java编程中,`List`接口是集合框架的一部分,提供了有序、可重复的元素存储功能。当我们需要对`List`中的元素进行排序时,可以利用Java提供...通过学习和理解这个`demo`,你将能够熟练地处理基于字段的列表排序问题。

    java 中文姓氏 排序

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

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

    对Java集合中的某个字段按照中文拼音排序可以使用多种方法,本文将介绍两种常见的方法。 方法一:使用Comparable接口 在Java中,我们可以使用Comparable接口来实现自定义排序。例如,我们可以创建一个Record类,...

    java中进行集合排序

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

    java 中如何从LIST 对象取值

    在Java编程语言中,列表(List)是一种常用的数据结构,用于存储有序的元素集合。本文将深入探讨如何从List对象中获取数据,包括使用不同类型的List实现以及从List中提取特定值的方法。我们将通过示例代码来理解这些...

    Java对List进行排序的两种实现方法

    在Java编程中,对List进行排序是常见的操作,特别是在处理数据集合时。本文将详细介绍两种在Java中对List进行排序的方法:实体类实现Comparable接口和使用Comparator接口。 首先,我们来了解一下基本背景。Java的`...

    java的list取之方法

    当多个线程同时对`List`进行修改时,可能会抛出`ConcurrentModificationException`异常。为了解决这个问题,可以使用`CopyOnWriteArrayList`或者手动同步代码块。 ### 总结 本篇介绍的是Java中List的基本操作以及...

    java中List对象排序通用方法

    在Java编程中,List对象的排序是一个常见的需求。List接口提供了多种排序方法,其中最常用的是`Collections.sort()`。这个方法可以直接对实现了Comparable接口的List进行排序,它根据元素的自然顺序进行排序。但是,...

    Java集合排序及java集合类详解(Collection、List、Map、Set)

    ### Java集合排序及java集合类详解 #### 集合框架概述 集合是Java编程语言中非常核心且广泛使用的部分,对于深入理解和高效使用Java语言至关重要。本文将围绕Java集合框架进行详细介绍,包括Collection、List、Set...

    java汉字笔画排序源码

    在Java中,可以使用`java.util.Comparator`接口自定义比较规则,根据笔画数对`List&lt;String&gt;`类型的汉字列表进行排序。此外,`java.text.Normalizer`类可以帮助处理Unicode编码,确保笔画计算的准确性。 总的来说,...

    java 按对象属性排序

    在Java集合框架中,`Collections.sort()`方法可以对List类型的集合进行排序。如果列表元素实现了`Comparable`接口,它会自动排序。如果列表元素是自定义对象,那么`compareTo()`方法将决定排序规则。 3. **...

Global site tag (gtag.js) - Google Analytics