

package com.itheima.d9_map_impl;import com.itheima.d1_set.Apple;import java.util.Comparator;import java.util.Map;import java.util.TreeMap;public class TreeMapDemo3 { public static void main(String[] args) { // TreeMap 有序 Map<Integer,String> maps1 = new TreeMap<>(); maps1.put(13,"王麻子"); maps1.put(1,"张三"); maps1.put(3,"县长"); System.out.println(maps1); //{1=张三, 3=县长, 13=王麻子} // TreeMap集合自带排序。可排序 不重复 (只要大小规则一样就可以认为重复) 无索引 // 自带比较器 Map<Apple,String> maps2 = new TreeMap<>(new Comparator<Apple>() { @Override public int compare(Apple o1, Apple o2) { // return Double.compare(o2.getPrice(),o1.getPrice()); // 根据价格降序 } }); maps2.put(new Apple("红富士","红色",9.9,500),"山东"); maps2.put(new Apple("青苹果","绿色",15.9,300),"江西"); maps2.put(new Apple("绿苹果","青色",29.9,400),"广州"); maps2.put(new Apple("黄苹果","红色",9.8, 500),"深圳"); System.out.println(maps2); //{Apple{name='青苹果', color='绿色', price=15.9, weight=300}=江西, Apple{name='绿苹果', color='青色', price=29.9, weight=400}=广州, Apple{name='红富士', color='红色', price=9.9, weight=500}=深圳} // 输出没有山东,覆盖了 }}