扁平化风格的网站seo行业
简介: CSDN博客专家、《Android系统多媒体进阶实战》一书作者
新书发布:《Android系统多媒体进阶实战》🚀
优质专栏: Audio工程师进阶系列【原创干货持续更新中……】🚀
优质专栏: 多媒体系统工程师系列【原创干货持续更新中……】🚀
优质视频课程:AAOS车载系统+AOSP14系统攻城狮入门视频实战课 🚀
人生格言: 人生从来没有捷径,只有行动才是治疗恐惧和懒惰的唯一良药.
🍉🍉🍉文章目录🍉🍉🍉
- 🌻1. 前言
- 🌻2. Java TreeSet关键字介绍
- 🌻3. 代码实例
- 🌻3.1 使用TreeSet存储有序元素
- 🌻3.2 使用TreeSet实现自定义排序
- 🌻3.3 使用TreeSet存储自定义对象
- 🌻3.4 TreeSet关键字总结
🌻1. 前言
本篇目的:Java进阶之TreeSet关键字:用法实例
🌻2. Java TreeSet关键字介绍
-
基本概念
TreeSet
是Java集合框架中的一个类,实现了Set
接口。TreeSet
基于红黑树实现,确保集合中的元素有序。
-
功能
- 提供集合的基本操作,如添加、删除和检查元素是否存在。
- 确保集合中的元素有序,自动排序。
-
使用限制
TreeSet
的元素必须实现Comparable
接口,或者在构造时提供一个Comparator
。- 元素可以是任何对象,但
TreeSet
不允许null
元素。
-
性能特性
TreeSet
基于红黑树实现,提供高效的查找和插入操作。- 合理使用
TreeSet
可以提高代码的性能和可维护性。
-
使用场景
- 广泛应用于需要存储有序元素的场景。
- 特别适用于需要自动排序和快速查找的场景。
🌻3. 代码实例
🌻3.1 使用TreeSet存储有序元素
-
应用场景
- 使用
TreeSet
存储有序元素,自动排序。
- 使用
-
用法实例
import java.util.TreeSet; import java.util.Set;public class TreeSetExample {public static void main(String[] args) {Set<String> set = new TreeSet<>();set.add("Apple");set.add("Banana");set.add("Cherry");System.out.println("Set size: " + set.size());System.out.println("Set contains Banana: " + set.contains("Banana"));set.remove("Banana");System.out.println("Set after removal: " + set);} }
输出:
Set size: 3
Set contains Banana: true
Set after removal: [Apple, Cherry]
🌻3.2 使用TreeSet实现自定义排序
-
应用场景
- 使用
TreeSet
实现自定义排序,通过提供Comparator
。
- 使用
-
用法实例
import java.util.Comparator; import java.util.TreeSet; import java.util.Set;public class TreeSetCustomSortExample {public static void main(String[] args) {Set<String> set = new TreeSet<>(new Comparator<String>() {@Overridepublic int compare(String o1, String o2) {return o2.compareTo(o1); // 降序排序}});set.add("Apple");set.add("Banana");set.add("Cherry");System.out.println("Set size: " + set.size());System.out.println("Set contains Banana: " + set.contains("Banana"));set.remove("Banana");System.out.println("Set after removal: " + set);} }
输出:
Set size: 3
Set contains Banana: true
Set after removal: [Cherry, Apple]
🌻3.3 使用TreeSet存储自定义对象
-
应用场景
- 使用
TreeSet
存储自定义对象,确保对象有序。
- 使用
-
用法实例
import java.util.TreeSet; import java.util.Set;class Person implements Comparable<Person> {String name;int age;Person(String name, int age) {this.name = name;this.age = age;}@Overridepublic int compareTo(Person other) {return this.age - other.age; // 按年龄升序排序}@Overridepublic String toString() {return "Person{name='" + name + "', age=" + age + "}";} }public class TreeSetWithCustomObjectsExample {public static void main(String[] args) {Set<Person> set = new TreeSet<>();set.add(new Person("Alice", 30));set.add(new Person("Bob", 25));set.add(new Person("Charlie", 35));System.out.println("Set size: " + set.size());System.out.println("Set: " + set);} }
输出:
Set size: 3
Set: [Person{name=‘Bob’, age=25}, Person{name=‘Alice’, age=30}, Person{name=‘Charlie’, age=35}]
🌻3.4 TreeSet关键字总结
关键词 | 功能描述 | 典型应用 |
---|---|---|
TreeSet | 基于红黑树的有序集合实现 | 提供集合的基本操作,确保元素有序 |
添加元素 | 使用add方法添加元素 | 确保元素有序,自动排序 |
检查元素 | 使用contains方法检查元素是否存在 | 快速检查元素是否存在 |
删除元素 | 使用remove方法删除元素 | 删除指定元素,确保集合更新 |