ArrayList对象排序

简介: 前言:最近对收音机的开发,遇到一个需求,将收藏列表显示在前,电台列表显示在后,所以需要对列表进行对象排序,在此做一个总结.步骤1 创建比较器,指定排序规则导入此包 java.

前言:最近对收音机的开发,遇到一个需求,将收藏列表显示在前,电台列表显示在后,所以需要对列表进行对象排序,在此做一个总结.

步骤1 创建比较器,指定排序规则

导入此包 java.util.Comparator

comparator = new Comparator<RadioNode>() {
            public int compare(RadioNode s1, RadioNode s2) {
                if (s1.isFavor == s2.isFavor) {
                    return s2.frequent - s1.frequent;
                }else{
                    if(s1.isFavor)  return -1;
                    if(s2.isFavor)  return 1;
                }
                return -1;
            }
        };

这里面有两个对象s1和s2,下面是制定的比较规则,如果isFavor相同,则比较frequent
返回1表示s1比s2大,则s1的位置不动,s2继续与后面的比较
返回0表示俩一样大,位置不变
返回-1表示s1与s2交换位置,s1继续按规则比较

步骤2 将集合传入

导入此包java.util.Collections

Collections.sort(favorList,comparator);

end
感谢android

相关文章
|
3月前
|
存储 安全 Java
Java数组(Arrays)详解
Java 中的数组是一种用于存储固定数量同类型数据的高效数据结构,支持连续内存存储和随机访问。数组可以声明并初始化,通过索引访问和修改元素,获取长度,使用循环遍历,支持多维形式,并可通过 `Arrays` 类的方法进行复制和排序。数组具有固定大小和类型安全的特点,但需注意越界等问题。灵活运用数组能显著提升编程效率。
157 9
|
5月前
|
存储 Java
HashMap与LinkedHashMap类型集合
【8月更文挑战第4天】`HashMap` 是基于哈希表实现的键值对存储结构,提供快速的查找、插入和删除操作,但不保证元素顺序。适用于不关心顺序且需高效操作的场景。 `LinkedHashMap` 继承自 `HashMap`,保持了元素的插入或访问顺序。适合需要按特定顺序遍历元素的应用,如按添加顺序显示购物车商品。其操作效率与 `HashMap` 相近。
|
8月前
ArrayList 对象排序实例
ArrayList 对象排序实例
41 2
|
8月前
|
存储 安全 Java
32.C#:ArrayList集合
32.C#:ArrayList集合
45 1
|
Java
Map集合详解及Collections方法和Arrays方法
Map集合详解及Collections方法和Arrays方法
66 0
|
存储 算法
使用HashSet<String>将map集合去重
使用HashSet<String>将map集合去重
|
存储 程序员 索引
List集合和其子类ArrayList、LinkedList
List集合和其子类ArrayList、LinkedList
148 1
|
缓存 安全 算法
ArrayList 可以完全替代数组吗?
在前面的文章里],我们学习了很多数据结构与算法思想。在实际的业务开发中,往往不需要我们手写数据结构,而是直接使用标准库的数据结构 / 容器类。 在后续的文章里,我们将以 Java 语言为例,分析从 ArrayList 到 LinkedHashMap 等一系列标准库容器类,最后再有一篇总结回顾,请关注。
140 0
使用两个ArrayList集合实现简单的map
使用两个ArrayList集合实现简单的map