HashMap排序--按值的长度排序(短到长)

直接撸代码,简单:

Map<String,String> maps = new HashMap<String, String>();//maps要排序的集合。
Map<String , String> Linkedmap = new LinkedHashMap<String , String>();//吧重新排序的集合放到Linkedmap里面。
Set<Entry<String, String>> set = maps.entrySet();
			LinkedList<Map.Entry<String, String>> linklist = new LinkedList<Map.Entry<String, String>>(set);
			Collections.sort(linklist, new Comparator<Entry<String, String>>(){
				@Override
				public int compare(Entry<String, String> p1,
						Entry<String, String> p2) {
					if(p1.getValue().length()>p2.getValue().length()){
						return 1;
					}else if(p1.getValue().length()<p2.getValue().length()){
						return -1;
					}else{
						return 0;
					}
				}
				
			} );
			for(Entry<String, String> en : linklist){
				Linkedmap.put(en.getKey(), en.getValue());
			}

猜你喜欢

转载自blog.csdn.net/huohua0612/article/details/87925782