init
This commit is contained in:
86
day01/src/com/inmind/TreeSetDemo.java
Normal file
86
day01/src/com/inmind/TreeSetDemo.java
Normal file
@@ -0,0 +1,86 @@
|
||||
package com.inmind;
|
||||
|
||||
import java.util.TreeSet;
|
||||
import java.util.Comparator;
|
||||
import java.util.Iterator;
|
||||
|
||||
public class TreeSetDemo {
|
||||
public static void main(String[] args) {
|
||||
// 1. 创建 TreeSet(默认自然排序)
|
||||
TreeSet<Integer> set1 = new TreeSet<>();
|
||||
|
||||
// 2. 创建 TreeSet(指定比较器,如降序排序)
|
||||
TreeSet<Integer> set2 = new TreeSet<>(Comparator.reverseOrder());
|
||||
|
||||
// 3. 添加元素(add())
|
||||
set1.add(3);
|
||||
set1.add(1);
|
||||
set1.add(2);
|
||||
set1.add(2); // 重复元素,添加失败
|
||||
System.out.println(set1); // 输出:[1, 2, 3](自动排序)
|
||||
|
||||
// 4. 删除元素(remove())
|
||||
set1.remove(2);
|
||||
System.out.println(set1); // 输出:[1, 3]
|
||||
|
||||
// 5. 判断元素是否存在(contains())
|
||||
boolean has3 = set1.contains(3);
|
||||
System.out.println(has3); // 输出:true
|
||||
|
||||
// 6. 获取集合大小(size())
|
||||
int size = set1.size();
|
||||
System.out.println(size); // 输出:2
|
||||
|
||||
// 7. 清空集合(clear())
|
||||
// set1.clear();
|
||||
|
||||
// 8. 迭代元素(升序)
|
||||
System.out.print("升序迭代:");
|
||||
for (Integer num : set1) {
|
||||
System.out.print(num + " ");
|
||||
}
|
||||
|
||||
// 9. 降序迭代(descendingIterator())
|
||||
System.out.print("\n降序迭代:");
|
||||
Iterator<Integer> it = set1.descendingIterator();
|
||||
while (it.hasNext()) {
|
||||
System.out.print(it.next() + " ");
|
||||
}
|
||||
|
||||
// 10. 获取第一个元素(first())
|
||||
Integer first = set1.first();
|
||||
System.out.println("\n第一个元素:" + first); // 输出:1
|
||||
|
||||
// 11. 获取最后一个元素(last())
|
||||
Integer last = set1.last();
|
||||
System.out.println("最后一个元素:" + last); // 输出:3
|
||||
|
||||
// 12. 获取小于指定元素的最大元素(lower())
|
||||
Integer lower = set1.lower(3);
|
||||
System.out.println("小于3的最大元素:" + lower); // 输出:1
|
||||
|
||||
// 13. 获取小于等于指定元素的最大元素(floor())
|
||||
Integer floor = set1.floor(3);
|
||||
System.out.println("小于等于3的最大元素:" + floor); // 输出:3
|
||||
|
||||
// 14. 获取大于指定元素的最小元素(higher())
|
||||
Integer higher = set1.higher(1);
|
||||
System.out.println("大于1的最小元素:" + higher); // 输出:3
|
||||
|
||||
// 15. 获取大于等于指定元素的最小元素(ceiling())
|
||||
Integer ceiling = set1.ceiling(1);
|
||||
System.out.println("大于等于1的最小元素:" + ceiling); // 输出:1
|
||||
|
||||
// 16. 截取子集合(headSet():小于指定元素)
|
||||
TreeSet<Integer> headSet = (TreeSet<Integer>) set1.headSet(3);
|
||||
System.out.println("小于3的子集合:" + headSet); // 输出:[1]
|
||||
|
||||
// 17. 截取子集合(tailSet():大于等于指定元素)
|
||||
TreeSet<Integer> tailSet = (TreeSet<Integer>) set1.tailSet(1);
|
||||
System.out.println("大于等于1的子集合:" + tailSet); // 输出:[1, 3]
|
||||
|
||||
// 18. 截取子集合(subSet():大于等于fromElement,小于toElement)
|
||||
TreeSet<Integer> subSet = (TreeSet<Integer>) set1.subSet(1, 3);
|
||||
System.out.println("子集合[1,3):" + subSet); // 输出:[1]
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user