Sorted Map: Tree Map
package com.kbhy.micas.collection;
import java.util.HashMap;
import java.util.Map;
import java.util.Iterator;
import java.util.Set;
import java.util.TreeMap;
/**
* @author Yang Yuan
* All rights are reserved.
*
*/
public class TestHashMap {
public static void main(String[] args) {
TreeMap h = new TreeMap();
// h.put("D", "1");
// h.put("A", "1");
// h.put("B", "1");
// h.put("C", "1");
/*
*
D : 1
A : 1
C : 1
B : 1
*/
Ma m1 = new TestHashMap.Ma("A", "1");
Ma m2 = new TestHashMap.Ma("B", "1");
Ma m3 = new TestHashMap.Ma("C", "1");
Ma m4 = new TestHashMap.Ma("D", "1");
h.put(m4, "d");
h.put(m2, "b");
h.put(m3, "c");
h.put(m1, "a");
printHashMap(h);
/*
result:
A 1 : a
B 1 : b
C 1 : c
D 1 : d
*/
}
public static void printHashMap(TreeMap h) {
Iterator it = h.entrySet().iterator();
while (it.hasNext()) {
Map.Entry e = (Map.Entry) it.next();
System.out.println(e.getKey() + " : " + e.getValue());
}
System.out.println("————————————");
Set s = h.keySet();
Iterator it2 = s.iterator();
while(it2.hasNext()){
System.out.println(h.get(it2.next()));
}
}
public static class Ma implements Comparable {
String v1;
String v2;
public Ma(String v1, String v2) {
this.v1 = v1;
this.v2 = v2;
}
public int hashCode() {
return 1;
}
public int compareTo(Object ob) {
Ma m = (Ma) ob;
return this.v1.compareTo(m.v1);
}
public boolean equals(Object ob) {
Ma m = (Ma) ob;
return m.v1.equals(this.v1);
}
public String toString() {
return v1 + " " + v2;
}
}
}