package com.heilong.map;
import java.util.Collection;
import java.util.Comparator;
import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.TreeMap;
class Emp implements Comparable<Emp>{
String name;
int salary;
public Emp(String name, int salary){
super();
this.name = name;
this.salary = salary;
}
@Override
public String toString() {
return "[姓名:" + this.name + " 薪水:" + this.salary + "]";
}
@Override
public int compareTo(Emp o) {
return this.salary-o.salary;
}
}
class MyComparator implements Comparator<Emp>{
@Override
public int compare(Emp e1, Emp e2) {
return e1.salary-e2.salary;
}
}
public class map {
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("1", "一");
map.put("2", "二");
map.put("3", "三");
map.put("4", "四");
System.out.println("方式一:");
Set<String> keys = map.keySet();
Iterator<String> it = keys.iterator();
while(it.hasNext()){
String key = it.next();
System.out.println("键:" + key + " 值:" + map.get(key));
}
System.out.println("方式二:");
Collection<String> c = map.values();
Iterator<String> it2 = c.iterator();
while(it2.hasNext()){
System.out.println("值:" + it2.next());
}
System.out.println("方式三:");
Set<Entry<String, String>> entrys = map.entrySet();
Iterator<Entry<String, String>> it3 = entrys.iterator();
while(it3.hasNext()){
Entry<String, String> entry = it3.next();
System.out.println("键:" + entry.getKey() + " 值:" + entry.getValue());
}
System.out.println("----------------------------------------------------------------------");
MyComparator myComparator = new MyComparator();
TreeMap<Emp, String> treeMap = new TreeMap<Emp, String>(myComparator);
treeMap.put(new Emp("张三", 200), "001");
treeMap.put(new Emp("李四", 100), "002");
treeMap.put(new Emp("王五", 300), "003");
treeMap.put(new Emp("赵六", 500), "004");
System.out.println(treeMap);
}
}