java中list里面存放map,根据map中的某一个字段进行排序
- package com;
- import java.util.ArrayList;
- import java.util.Collections;
- import java.util.Comparator;
- import java.util.HashMap;
- import java.util.List;
- import java.util.Map;
- public class Com {
- /**
- * @param args
- */
- @SuppressWarnings({ "rawtypes", "unchecked" })
- public static void main(String[] args) {
- // TODO Auto-generated method stub
- List<Map<String, Object>> list = new ArrayList<Map<String, Object>>();
- Map<String, Object> map1 = new HashMap<String, Object>();
- map1.put("id", "1");
- map1.put("name", "p");
- Map<String, Object> map2 = new HashMap<String, Object>();
- map2.put("id", "2");
- map2.put("name", "h");
- Map<String, Object> map3 = new HashMap<String, Object>();
- map3.put("id", "3");
- map3.put("name", "f");
- list.add(map1);
- list.add(map3);
- list.add(map2);
- //排序前
- for (Map<String, Object> map : list) {
- System.out.println(map.get("id"));
- }
- Collections.sort(list, new Comparator<Map<String, Object>>(){
- public int compare(Map<String, Object> o1, Map<String, Object> o2) {
- String name1 =(String)o1.get("id");//name1是从你list里面拿出来的一个
- String name2= (String)o2.get("id"); //name1是从你list里面拿出来的第二个name
- return name1.compareTo(name2);
- }
- });
- //排序后
- System.out.println("-------------------");
- for (Map<String, Object> map : list) {
- System.out.println(map.get("id"));
- }
- }
- }
运行结果是:
1
3
2
- -------------------
1
2
3
转自:http://blog.csdn.net/g631521612/article/details/8768658
java中list里面存放map,根据map中的某一个字段进行排序的更多相关文章
- 深入理解--VUE组件中数据的存放以及为什么组件中的data必需是函数
1.组件中数据的存放 ***(重点)组件是一个单独模块的封装:这个模块有自己的HTML模板,也有data属性. 只是这个data属性必需是一个函数,而这个函数返回一个对象,这个对象里面存放着组件的数据 ...
- [SQL]数据库中对值为数字,存储格式为varchar类型的字段进行排序
如果要对数据库中某存储数字的列(存储类型不为int)进行排序,可以在order by 里对该列进行转换, 即如 order by cast(mycolumn as int) desc
- SqlServer中怎么删除重复的记录(表中没有id)
SqlServer中怎么删除重复的记录(表中没有id) 其实我在别的网址也查到过删除重复的记录,不知道我是我SqlServer2012版本太低还是啥原因 delete from scwhere (c# ...
- 在论坛中出现的比较难的sql问题:16(取一个字段中的数字)
原文:在论坛中出现的比较难的sql问题:16(取一个字段中的数字) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路. 问题:取一个字段中的数字http://bbs.csdn ...
- 多用多学之Java中的Set,List,Map
很长时间以来一直代码中用的比较多的数据列表主要是List,而且都是ArrayList,感觉有这个玩意就够了.ArrayList是用于实现动态数组的包装工具类,这样写代码的时候就可以拉进 ...
- 浅谈Java中的Set、List、Map的区别(转)
对JAVA的集合的理解是想对于数组: 数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),JAVA集合可以存储和操作数目不固定的一组数据. 所有的JAVA集合都位于 java ...
- 牛客网Java刷题知识点之Java 集合框架的构成、集合框架中的迭代器Iterator、集合框架中的集合接口Collection(List和Set)、集合框架中的Map集合
不多说,直接上干货! 集合框架中包含了大量集合接口.这些接口的实现类和操作它们的算法. 集合容器因为内部的数据结构不同,有多种具体容器. 不断的向上抽取,就形成了集合框架. Map是一次添加一对元素. ...
- Java基础学习总结(29)——浅谈Java中的Set、List、Map的区别
就学习经验,浅谈Java中的Set,List,Map的区别,对JAVA的集合的理解是想对于数组: 数组是大小固定的,并且同一个数组只能存放类型一样的数据(基本类型/引用类型),JAVA集合可以存储和操 ...
- Java基础(40):Java中的集合介绍---Collection与Map
集合类说明及区别Collection├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap└WeakHashMap ...
随机推荐
- 问题:sqlserver 跨服务器连接;结果:Sql Server 跨服务器连接
Sql Server 跨服务器连接 用openrowset连接远程SQL或插入数据 --如果只是临时访问,可以直接用openrowset --查询示例 select * from openrowset ...
- linux命令-分区表fstab
磁盘分区后需要格式化,挂载之后才能使用 我们有开机后自动挂载的需求,方法有两种 1.配置文件的形式,把mount写到配置文件里去 cat /etc/fstab 2.把挂载命令写到一个文件里 ls /e ...
- 多媒体基础知识之YUV数据
1.什么是YUV格式 YUV,是一种颜色编码方法.Y表示明亮度(Luminance.Luma),也就是灰度值.U和V则是色度.浓度(Chrominance.Chroma),作用是描述影像色彩及饱和度, ...
- 【Android 多媒体应用】使用MediaCodec解码使用SurfaceView显示视频
1.MainActivity.java import android.app.Activity; import android.os.Bundle; import android.os.Environ ...
- linux系统 使用git图形化管理工具———gitk
运行安装命令: sudo apt-get install gitk 运行命令打开gitk : gitk
- 安装vs2012以后 sql2008不能使用解决办法
出现的错误 (1) 打开控制面板,找到卸载程序,把”MicrosoftSQL Server 2013(2012) Express LocalDB”卸载掉,然后打开SQL Server 配置管理器,就会 ...
- MSSQL grant权限
--创建登录名 create login test_user with password='123456a.'; --创建用户 create user test_user for login test ...
- 全文检索技术---Lucene
1 Lucene介绍 1.1 什么是Lucene Lucene是apache下的一个开源的全文检索引擎工具包.它为软件开发人员提供一个简单易用的工具包(类库),以方便的在目标系统中实现 ...
- opencv3.2加载图片
#include <opencv2/opencv.hpp>#include <iostream> using namespace cv;using namespace std; ...
- Opengl创建几何实体——四棱锥和立方体
//#include <gl\glut.h>#include <GL\glut.h>#include <iostream> using namespace std; ...