【DateStructure】 Charnming usages of Map collection in Java
When learning the usage of map collection in java, I found serveral beneficial methods that was encountered in the daily life. Now I made a summary:
- import java.util.ArrayList;
 - import java.util.Collections;
 - import java.util.Comparator;
 - import java.util.HashMap;
 - import java.util.Iterator;
 - import java.util.List;
 - import java.util.Map;
 - import java.util.SortedMap;
 - import java.util.TreeMap;
 - public class MapUtil
 - {
 - private static final Map<String, String> contents = new HashMap<String, String>();
 - @SuppressWarnings("unchecked")
 - public static void initMap()
 - {
 - Map testMap = new HashMap<String, String>();
 - testMap.put("Albert", "Shao");
 - contents.putAll(testMap);
 - }
 - /**
 - * Four methods to list map.
 - * output:
 - * Albert:Shao
 - Albert:Shao
 - Shao
 - Albert:Shao
 - * @time Jul 18, 2014 11:39:46 AM
 - * @return void
 - */
 - public static void listMap()
 - {
 - Map<String, String> testMap = new HashMap<String, String>();
 - testMap.put("Albert", "Shao");
 - for (Map.Entry<String, String> entry : testMap.entrySet())
 - {
 - System.out.println(entry.getKey() + ":" + entry.getValue());
 - }
 - for (String key : testMap.keySet())
 - {
 - System.out.println(key + ":" + testMap.get(key));
 - }
 - for (String value : testMap.values())
 - {
 - System.out.println(value);
 - }
 - Iterator<Map.Entry<String, String>> keyIt = testMap.entrySet()
 - .iterator();
 - while (keyIt.hasNext())
 - {
 - Map.Entry<String, String> entry = keyIt.next();
 - System.out.println(entry.getKey() + ":" + entry.getValue());
 - }
 - }
 - /**
 - * Use the treeMap order by key asc.
 - * Watch out: if key is repeated, the latter element will replace the former.
 - * output: {Apple=five, Banana=three, Grape=one, Pair=four}
 - *
 - * @time Jul 18, 2014 11:37:51 AM
 - * @return void
 - */
 - public static void sort()
 - {
 - SortedMap<String, String> sortMap = new TreeMap<String, String>();
 - sortMap.put("Pair", "four");
 - sortMap.put("Apple", "two");
 - sortMap.put("Grape", "one");
 - sortMap.put("Banana", "three");
 - sortMap.put("Apple", "five");
 - System.out.println(sortMap);
 - }
 - /**
 - * Sort the Map by map.value, then set the result to map.
 - * output : [Apple=1, Pair=2, Banana=3, Grape=4]
 - *
 - * @time Jul 18, 2014 11:36:28 AM
 - * @return void
 - */
 - public static void sortByValue()
 - {
 - Map<String, Integer> testMap = new HashMap<String, Integer>();
 - testMap.put("Pair", 2);
 - testMap.put("Apple", 1);
 - testMap.put("Grape", 4);
 - testMap.put("Banana", 3);
 - List<Map.Entry<String, Integer>> entryList = new ArrayList<Map.Entry<String, Integer>>(
 - testMap.entrySet());
 - Collections.sort(entryList,
 - new Comparator<Map.Entry<String, Integer>>()
 - {
 - public int compare(Map.Entry<String, Integer> c1,
 - Map.Entry<String, Integer> c2)
 - {
 - return (c1.getValue() - c2.getValue());
 - }
 - });
 - System.out.println(entryList);
 - }
 - /**
 - *Sort map by value when value is object.
 - * use compareTo method to replace simple '-'
 - * output:[Apple=AB, Grape=AF, Pair=BB, Banana=XY]
 - *
 - * @time Jul 18, 2014 11:48:35 AM
 - * @return void
 - */
 - public static void sortByObject()
 - {
 - Map<String, String> testMap = new HashMap<String, String>();
 - testMap.put("Pair", "BB");
 - testMap.put("Apple", "AB");
 - testMap.put("Grape", "AF");
 - testMap.put("Banana", "XY");
 - List<Map.Entry<String, String>> entryList = new ArrayList<Map.Entry<String, String>>(
 - testMap.entrySet());
 - Collections.sort(entryList,
 - new Comparator<Map.Entry<String, String>>()
 - {
 - public int compare(Map.Entry<String, String> c1,
 - Map.Entry<String, String> c2)
 - {
 - return (c1.getValue().compareTo(c2.getValue()));
 - }
 - });
 - System.out.println(entryList);
 - }
 - public static void main(String[] args)
 - {
 - MapUtil.listMap();
 - MapUtil.sort();
 - MapUtil.sortByValue();
 - MapUtil.sortByObject();
 - }
 - }
 
If you want to further know about the usage of list methods, you could view my another blogs.
【DateStructure】 Charnming usages of Map collection in Java的更多相关文章
- 如何用javac 和java 编译运行整个Java工程 (转载)【转】在Linux下编译与执行Java程序
		
如何用javac 和java 编译运行整个Java工程 (转载) http://blog.csdn.net/huagong_adu/article/details/6929817 [转]在Linux ...
 - 【BZOJ1125】[POI2008]Poc hash+map+SBT
		
[BZOJ1125][POI2008]Poc Description n列火车,每条有l节车厢.每节车厢有一种颜色(用小写字母表示).有m次车厢交换操作.求:对于每列火车,在交换车厢的某个时刻,与其颜 ...
 - 【算法】哈希表的诞生(Java)
		
参考资料 <算法(java)> — — Robert Sedgewick, Kevin Wayne <数据结构> ...
 - 【Unity】Unity中C#与Android中Java的互相调用遇到的一些问题
		
1.有关调用的一些问题: (1).在C#中直接调用java中的代码,无返回值: 在java中: public static void setAge(Context context , int leve ...
 - 【dom4j】解析xml为map
		
dom4j解析xml文件 <?xml version="1.0" encoding="utf-8"?> <workflows> < ...
 - 【python】lamda表达式,map
		
一个很好的博客:http://blog.csdn.net/mathboylinlin/article/details/9413551 博客不让转载,我只摘抄了里面几个例子,更多内容到博客里去看 lam ...
 - 【iOS】苹果,百度Map定位使用与总结
		
iOS中使用较多的3款地图,google地图.百度地图.苹果自带地图(高德).当中苹果自带地图在中国使用的是高德的数据.苹果在iOS 6之后放弃了使用谷歌地图,而改用自家的地图.在国内使用的较多的就是 ...
 - 【原创】【Android】揭秘 ART 细节 ---- Garbage collection
		
背景 Dalvik :http://zh.wikipedia.org/wiki/Dalvik%E8%99%9A%E6%8B%9F%E6%9C%BA ART :http://source.andro ...
 - 【384】reduce归纳、map映射、filter筛选 的用法
		
参考:4. Map, Filter and Reduce — Python Tips 0.1 documentation 参考:Python的functools.reduce用法 Map:映射,对于列 ...
 
随机推荐
- 设置windows窗口半透明(使用SetLayeredWindowAttributes API函数)
			
所需函数原型:BOOL WINAPI SetLayeredWindowAttributes(HWND hWnd, COLORREFcrKey, BYTE bAlpha, DWORD flag); ...
 - delphi 文件搜索,遍历所有子目录
			
function ListFiles(path: string): TStringList; var SearchRec: TSearchRec; found: integer; begin resu ...
 - Flex中如何通过showAllDataTips属性使鼠标移动到图表时显示所有的数据Tips的例子
			
原文 http://blog.minidx.com/2008/11/10/1616.html 接下来的例子演示了Flex中如何通过showAllDataTips属性,使鼠标移动到图表时显示所有的数据T ...
 - 普林斯顿大学算法课 Algorithm Part I Week 3 排序的应用 System Sorts
			
排序算法有着广泛的应用 典型的应用: 排序名称 排序MP3音乐文件 显示Google的网页排名的搜索结果 按标题顺序列出RSS订阅 排序之后下列问题就变得非常简单了 找出中位数(median) 找出统 ...
 - python 如何判断对象是否为类(class)
			
if type(att).__name__ == 'classobj': pass else: pass
 - WISE安装程序增加注册控制
			
我做安装程序,一直用的WISE 9.最近为一个用户提供安装程序时,公司要求对安装程序增加控制,避免用户到处安装,增加公司服务的压力.因此,我在WISE制作的安装程序中增加了注册码校验控制,不能给出正确 ...
 - linux学习之(三)-文件操作命令
			
创建一个空文件: touch 文件名 例:touch tom 查看: 查看一个文件的内容命令cat 文件名 例:cat tom 注:cat命令并不能显示文件的所有信息,但屏幕显示的 行数是有 ...
 - ASP.NET mvc4 WEB API异常处理
			
当一个web api抛出一个异常后 此异常会被转化成一个HTTP响应 错误代码为500的服务错误 但是如果你不想让客户端看到500的错误码 你也可以自定义错误码 如下代码当用户输入的ID没有与之相关的 ...
 - 实现Android语音识别服务接口 RecognitionService的方法
			
之前的一篇文章介绍过SpeechRecognizer类,该类能够作为对外的一个接口,并通过Intent传递一个ComponentName获取可支持语音识别的功能的服务,一般的用户手机中假设安装了语音识 ...
 - C++中使用class和structkeyword的不同
			
类能够在它的第一个訪问说明符之前定义成员,对这样的成员的訪问权限依赖于类定义的方式.假设我们使用structkeyword,则定义在第一个訪问说明符之前的成员是public的,相反,假设使用class ...
 
			
		