`
shuechaolau
  • 浏览: 34325 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

关于List的排序

    博客分类:
  • Java
 
阅读更多

在阅读代码的过程当中,经常看到有若干代码在对List进行排序时,采用遍历的方式,保守的在遍历时进行冒泡或者选择,没有充分利用java框架的特性,这里提供两种方法供参考:

一、直接利用hashCode的方法:

List<T> aList      
HashSet h = new HashSet(aList);     
aList.clear();     
aList.addAll(h);

注:上述方法需要覆盖T中的hashCode;另外该方法不能保证List中的元素的书讯与去重前的顺序的一致性

 

二、依然使用hashCode特性,保证顺序的一致性

Set set = new HashSet();     
List newList = new ArrayList();     
for (Iterator iter = arlList.iterator(); iter.hasNext(); )     
{     
Object element = iter.next();     
if (set.add(element)) newList.add(element);     
}     
arlList.clear();     
arlList.addAll(newList

分享到:
评论

相关推荐

    java List排序工具类

    java List排序工具类 使用示例: new OrderUtils().order(list, "name", OrderUtils.DESC); 相关实例代码: public static void main(String[] args) { List&lt;Person&gt; list = getData(); // 获取无序数据 new ...

    java中list排序

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

    按照规则,对list排序

    * 对传入的list进行分组排序 * list里面数据格式 [01-01-开头.txt, 01-02-简介.jpg, 11-01-尾声.jpg, 11-03-空白.jpg, 11-04-空白2.jpg, 11-06-空白1.jpg, 11-02-答谢语.txt, 02-01-标题.jpg, 02-09-标题555.jpg, ...

    java List 排序 Collections.sort

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

    c# List类排序方法

    ### c# List类排序方法 #### 一、初始工作与预备知识 在C#中,`List&lt;T&gt;`是一个非常常用的泛型集合类,它提供了动态数组的功能,可以存储任意数量的相同类型元素。当涉及到对List中的数据进行排序时,我们可以采用...

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

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

    JAVA SortList 通用排序类

    JAVA SortList 通用排序类 从网上搜到一个java 对 List 排序的工具,自己改了下 支持 整数 和 浮点数 比较后排序,浮点数小数部分的有点问题,期待大牛帮忙优化。

    List集合排序222222

    导入jar 包 调用 String[] arr1 = new String[1]; ... 参数1 排序的集合 参数2 排序的字段(与定义字段一致) 可多个 参数3 排序方式(asc desc) 暂时只支持String 和int的排序 可能有些BUG 敬请谅解

    MFC实现ListControl排序

    本教程主要针对"ListControl排序"这一主题进行详细阐述,帮助开发者理解如何在MFC环境下实现ListControl的排序功能。 首先,`ListControlSort.aps`、`ListControlSort.clw`、`ListControlSortDlg.cpp`、`...

    C# List OrderBy 动态多字段排序

    `DynamicOrderBy`函数接受一个`List&lt;T&gt;`和一个字段名数组,然后通过`BuildOrderByExpression`构建一个表示排序规则的Lambda表达式。`BuildOrderByExpression`使用`Expression.Property`来逐个获取指定的字段,并通过...

    实现了MFC list排序

    本篇文章将详细探讨如何实现MFC List控件的排序功能。 在MFC中,`CListCtrl` 类提供了对列表视图控件的操作接口。列表视图可以显示多项数据,每项数据可以包含多个子项,类似于表格。要实现列表的排序,我们需要...

    List Control排序的程序,带排序的三角形

    本项目是一个关于`List Control`排序功能的示例,包含了一个带有排序指示三角形的实现。这个示例旨在帮助开发者理解和应用`List Control`的排序功能。 `List Control`,在MFC中通常通过`CListCtrl`类来操作,允许...

    C#对list列表进行随机排序的方法

    总的来说,C#中对list列表进行随机排序的方法主要依赖于随机数生成器,通过生成随机索引并插入元素,可以轻松实现列表的随机化。这种技巧在各种场景中都很有用,比如模拟随机事件、游戏中的随机生成等。希望这个方法...

    List对象排序通用方法

    List对象排序通用方法List对象排序通用方法List对象排序通用方法List对象排序通用方法

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

    本文将深入探讨如何使用 `Collections` 类对 List 进行排序操作。 首先,让我们了解 `List` 排序的基本概念。在 Java 中,`List` 是接口,它继承了 `Collection` 接口,并添加了顺序相关的操作。常见的 `List` 实现...

    ListCtrl控件排序类及演示程序

    这个“ListCtrl控件排序类及演示程序”是针对开发者的一个资源,它提供了一种方法来实现ListView控件中数据的动态排序功能,特别适用于那些需要频繁更新和排序列表的应用。 ListCtrl控件排序类是程序中一个关键的...

    list集合树状排序-java

    在Java编程中,"list集合树状排序"是一种常见的需求,特别是在处理前端展示的数据时,如使用jQuery的treetable插件。这个场景通常涉及到数据结构的组织和排序,以便前端能够按照树形结构正确地展示层级关系。下面将...

    Listctrl 排序详解

    【Listctrl 排序详解】 在Windows编程中,MFC(Microsoft Foundation Classes)库提供了一个名为CListCtrl的类,用于创建和管理列表视图控件。本文将深入讲解如何在VS2010中使用CListCtrl进行排序操作。 在...

    VC中排序功能的list control

    “LIST排序”则明确指出了实现的关键功能是列表的排序。 综上所述,`VC中排序功能的list control`是一个自定义的`CListCtrl`类,它扩展了标准`List Control`的功能,允许用户通过点击列标题来对数据进行排序。实现...

    MFC ListCtrl 排序

    `SortItems`函数是MFC提供的用于对ListCtrl进行排序的函数,需要传入一个比较函数`MyCompareFunction`和一个参数,参数通常为`this`指针,以便在比较函数中获取控件实例。 `MyCompareFunction`是自定义的比较函数,...

Global site tag (gtag.js) - Google Analytics