import org.junit.Test;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Map;
import java.util.TreeMap;
public class MapTest {
@Test
public void testHashMap1() throws Exception {
Map<String, String> map = new HashMap<String, String>();
map.put("c", "ccccc");
map.put("a", "aaaaa");
map.put("b", "bbbbb");
map.put("d", "ddddd");
Map<String, String> sortMap = new TreeMap<String, String>(new Comparator<String>() {
public int compare(String str1, String str2) {
//按键值升序排序
// return str1.compareTo(str2);
//按键值降序排序
return str2.compareTo(str1);
}
});
sortMap.putAll(map);
StringBuffer sb = new StringBuffer();
//按照键值进行 key1=value1&key2=value2&key3=value3进行连接
for (Map.Entry<String, String> entry : sortMap.entrySet()) {
// sb.append(entry.getKey());
// sb.append("=");
// sb.append(entry.getValue());
// sb.append("&");
sb.append(entry.getKey()).append("=").append(entry.getValue()).append("&");
}
System.out.println(sb.toString());
//String new_sb = sb.substring(0, sb.length() - 1);
//System.out.println(new_sb);
sb.deleteCharAt(sb.length() - 1);
System.out.println(sb.toString());
}
@Test
public void testSortHashMap2(){
Map<String, String> map = new HashMap<String, String>();
map.put("c", "ccccc");
map.put("a", "aaaaa");
map.put("b", "bbbbb");
map.put("d", "ddddd");
Map<String, String> sortMap = new TreeMap<String, String>(new MapKeyComparator());
sortMap.putAll(map);
StringBuffer sb = new StringBuffer();
//按照键值进行 key1=value1&key2=value2&key3=value3进行连接
for (Map.Entry<String, String> entry : sortMap.entrySet()) {
// sb.append(entry.getKey());
// sb.append("=");
// sb.append(entry.getValue());
// sb.append("&");
sb.append(entry.getKey()).append("=").append(entry.getValue()).append("&");
}
System.out.println(sb.toString());
//String new_sb = sb.substring(0, sb.length() - 1);
//System.out.println(new_sb);
sb.deleteCharAt(sb.length() - 1);
System.out.println(sb.toString());
}
class MapKeyComparator implements Comparator<String> {
public int compare(String str1, String str2) {
//按键值升序排序
// return str1.compareTo(str2);
//按键值降序排序
return str2.compareTo(str1);
}
}
}
Map按键值进行排序
最新推荐文章于 2024-04-16 10:44:29 发布