From 1595d2a08e7398f6a7796f116b05bf655407b3bc Mon Sep 17 00:00:00 2001 From: xuxin <840198532@qq.com> Date: Mon, 3 Aug 2026 11:47:15 +0800 Subject: [PATCH] =?UTF-8?q?s-day04-TreeMap=E4=BF=9D=E5=AD=98=E8=87=AA?= =?UTF-8?q?=E5=AE=9A=E4=B9=89=E5=AF=B9=E8=B1=A1&=E9=9B=86=E5=90=88?= =?UTF-8?q?=E7=9A=84=E6=A1=86=E6=9E=B6=E4=BD=93=E7=B3=BB?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/inmind/treemap03/TreeMapDemo10.java | 38 +++++++++++++++++++ 1 file changed, 38 insertions(+) create mode 100644 s-day04/src/com/inmind/treemap03/TreeMapDemo10.java diff --git a/s-day04/src/com/inmind/treemap03/TreeMapDemo10.java b/s-day04/src/com/inmind/treemap03/TreeMapDemo10.java new file mode 100644 index 0000000..3fbbc0a --- /dev/null +++ b/s-day04/src/com/inmind/treemap03/TreeMapDemo10.java @@ -0,0 +1,38 @@ +package com.inmind.treemap03; + +import com.inmind.treeset02.Student; + +import java.util.TreeMap; + +/* +TreeMap的基本使用 +带有自然排序功能的双列集合(以Key值的自然排序功能进行排序) + +总结:treeSet和treeMap都是具有排序功能的集合,所以要存入有排序功能的自定义对象才能使用排序功能,如果 +没有排序功能,会报错:java.lang.ClassCastException: com.inmind.treeset02.Student cannot be cast to java.lang.Comparable + +Collection:单列集合父接口 + List: + ArrayList:底层是object[],查询快,增删慢 + LinkedList:底层是双向链接,查询慢,增删快 + Set: + HashSet:底层哈希表,在实现去重的基础上,能够高效查询,HashCode,equals重写 + LinkedHashSet:底层哈希表+链表,实现Set集合的有序 + TreeSet:拥有自然排序功能且会直接排序,元素必要有排序(Comparable,Comparator) +Map: + HashMap:存取无序的,不可重复的双列集合 + LinkedhashMap:存取有序,不可重复的双列集合 + TreeMap:拥有自然排序功能且会直接排序,元素必要有排序(Comparable,Comparator) + + */ +public class TreeMapDemo10 { + public static void main(String[] args) { + //创建一个学生类为key,住址为String的有排序功能的双列集合 + TreeMap treeMap = new TreeMap<>(); + treeMap.put(new Student("小王1", 18), "南京"); + treeMap.put(new Student("小王2", 17), "南京"); + treeMap.put(new Student("小王3", 20), "南京"); + + System.out.println(treeMap); + } +}