场景:

SparseArray 是android中用来取代HashMap的一种数据结构。既然android系统建议我们用SparseArray来代替HashMap,那我们还是按它说的做吧。但是在使用过程中,我们需要对他进行排序,比如按照数据的字母进行排序。

解决方式:

private SparseArray sortSparseArray(SparseArray arr){

List keys = new ArrayList();

List vals = new ArrayList();

for(int i =0; i < arr.size();i++){

keys.add(arr.keyAt(i));

vals.add(arr.valueAt(i));

}

Collections.sort(keys);

Collections.sort(vals);

arr.clear();

for (int i =0; i

arr.put(keys.get(i),vals.get(i));

}

return arr;

}

只需要把查出来的未排序的sparseArray的key跟value先装进分别的list里面并且分别对他们进行排序之后再次装填即可。

Android把数组从大到小排列,Android SparseArray 排序相关推荐

  1. Java实验——设计一个数组模型,用于存储体育项目成绩男生体育项目有足球、长跑和铅球,女生体育项目有跳舞、体操、游泳。设计排序算法,将变量a、b、c中的数值按大小顺利进行互换(从大到小排列)。

    设计一个数组模型,用于存储体育项目成绩:男生体育项目有足球.长跑和铅球,女生体育项目有跳舞.体操.游泳. import java.util.Scanner;public class DataArray ...

  2. 求出千位数上的数加百位数上的数等于十位数上的数加个位数上的数的个数cnt,再把所有满足条件的四位数依次存入数组b中,然后对数组b中的四位数按从大到小的顺序进行排序。

    已知数据文件IN13.DAT中存有300个四位数,并已调用读函数readDat()把这些数存入数组a中,请编制一个函数jsValue(),其功能是:求出千位数上的数加百位数上的数等于十位数上的数加个位 ...

  3. 百度:度度熊有一个N个数的数组,他想将数组从大到小排好序...

    度度熊有一个N个数的数组,他想将数组从大到小排好序,但是萌萌的度度熊只会下面这个操作: 任取数组中的一个数然后将它放置在数组的最后一个位置. 问最少操作多少次可以使得数组从小到大有序? 输入描述: 首 ...

  4. 【python】输出30以内的质数并输出、统计个数、以及从大到小排列。

    [python]输出30以内的质数并输出.统计个数.以及从大到小排列. 创建一个空列表 first_list = [] 寻找30以内的质数 for i in range(2, 30): for j i ...

  5. 在python中输入10个整数并求出最大值_python练习题 :用户任意输入10个整数到列表中,然后由大到小排列并输出。...

    一:填空题: 1.python是一种面向_对象 __的高级语言. 2.python可以在多种平台运行,这体现了python的___可移植___特性. 3.python源代码被解释器转换后的格式为___ ...

  6. 将三个数字由大到小排列

    #include <stdio.h>int main() {int a=1;int b=1;int c=1;int k;printf("请输入任意三个数字:\n");s ...

  7. python range从大到小排列_python 十大经典排序算法

    人生苦短,我用python! 排序算法可以分为内部排序和外部排序,内部排序是数据记录在内存中进行排序,而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存.常见的内部排序 ...

  8. php从大到小排列数字,php输入几个数从大到小排序

    php输入几个数从大到小排序 以下程序实现了在网页输入几个数,按照从大到小排序并输出的功能,希望对需要的朋友有帮助: Document 请输入要排序的数据 - - - - if(isset($_POS ...

  9. c语言自动输入0到1000,c语言实现输入一组数自动从大到小排列

    #include main() { int x; printf("请输入要排序数字个数:"); scanf("%d",&x); int i,j,k,a, ...

最新文章

  1. VTK:Qt之SideBySideRenderWindowsQt
  2. 《Language Implementation Patterns》之访问重写语法树
  3. P2082 区间覆盖(加强版)
  4. python任务调度平台 界面_分布式任务调度平台XXL-JOB
  5. 国产主可控的嵌入式仿真测试软件SkyEye与可信编译器L2C的核心翻译介绍
  6. iOS-Senior20-Map定位
  7. ARMv8体系结构基础03:加载和存储指令
  8. 力扣-1566 重复至少 K 次且长度为 M 的模式
  9. MySql存储引擎的比较及选择
  10. java查询三级树(三级目录)
  11. 我奋斗了十八年不是为了和你一起喝杯咖啡
  12. Tableau可视化项目
  13. 王道OS-磁盘存储器管理
  14. 【仓库物资识别】二、将三维点云转换成二维图像
  15. 2023年了,推荐 5 款 API 管理工具
  16. 【妄言之言】我的2016--困境与选择
  17. Linux系统破解root密码
  18. 一键“拉取”链上数据 海淀区应用遍地开花
  19. mysql查询18至28岁的人,MariaDB第三章(select)基本查询
  20. Master或是围棋史上最完美营销:谷歌、围棋和野狐网都赢了

热门文章

  1. 华为鸿蒙搭载哪些手机,华为鸿蒙系统支持哪些手机 可以装华为鸿蒙系统手机...
  2. Android自定义事件总线,android事件总线EventBus3.0使用方法详解
  3. mysql json数组拆分表_MaxCompute将json数组拆分成多行
  4. snap7在linux怎么用,Ubuntu 通过snap7连接西门子1200
  5. java monitor 翻译_管程(Monitor)概念及Java的实现原理
  6. 移动端UI自动化Appium测试——Appium server两种启动方式
  7. 抓取图像像素到int数组
  8. 关于 m_pszAppName
  9. Asp.net在线备份、压缩和修复Access数据库
  10. Align and Prompt:SalesforceANU提出ALPRO,进行细粒度的视频文本对齐!代码已开源!...