一:引言
当用到了TreeMap时候,是因为要根据键值进行排序,使输出的结果是按递增顺序的
二:上码
package cn.wyj.two;import java.util.Map;
import java.util.TreeMap;/*** 一般当 键值需要排序时,我们会选择用 TreeMap* **/
public class Demo6_TreeMap {public static void main(String[] args) {Map<Integer,String> m1 = new TreeMap<Integer,String>();m1.put(20, "aa");m1.put(2, "bb");m1.put(5, "cc");System.out.println(m1.toString());Map<Emp,String> m2 = new TreeMap<Emp,String>();m2.put(new Emp(100,"王大爷",10000), "勤劳");m2.put(new Emp(102,"王二爷",5000), "善良");m2.put(new Emp(99,"王三爷",20000), "勇敢");m2.put(new Emp(39,"王4爷",20000), "不要命");System.out.println(m2);}}class Emp implements Comparable<Emp>{private int id;private String name;private int slary;public Emp(int id, String name, int slary) {super();this.id = id;this.name = name;this.slary = slary;}@Overridepublic String toString() {// TODO Auto-generated method stubreturn "Id:"+ this.id+" Name:" + this.name + " Salry:" +this.slary;}@Overridepublic int compareTo(Emp o) {//负数:小于; 0 : 等于 ; 正数:大于// TODO Auto-generated method stubif(this.slary > o.slary){return 1;}else if(this.slary < o.slary){return -1;}else{if(this.id > o.id){return 1;}else if( this.id < o.id){return -1;}}return 0;}}
如有疑问欢迎留言!