s-day04-TreeSet的基本使用
This commit is contained in:
@@ -0,0 +1,58 @@
|
||||
package com.inmind.treeset02;
|
||||
|
||||
import java.util.SortedSet;
|
||||
import java.util.TreeSet;
|
||||
|
||||
/*
|
||||
TreeSet和TreeMap对比学习
|
||||
|
||||
TreeSet是Set接口的一个实现类,有序的集合。
|
||||
它的特点:
|
||||
1.元素有序(默认自然排序,也可以通过构造方法传入新的排序)
|
||||
2.不能重复
|
||||
3.底层是红黑树
|
||||
|
||||
总结:treeSet有排序功能,可以根据指定的值获取数据,并且可以获取子集合
|
||||
*/
|
||||
public class TreeSetDemo08 {
|
||||
public static void main(String[] args) {
|
||||
//创建自然排序的treeSet
|
||||
TreeSet<Integer> treeSet = new TreeSet<>();
|
||||
treeSet.add(5);
|
||||
treeSet.add(3);
|
||||
treeSet.add(1);
|
||||
treeSet.add(2);
|
||||
System.out.println(treeSet);
|
||||
|
||||
//之前已学过的Set接口的add,remove,contains
|
||||
treeSet.remove(1);
|
||||
System.out.println(treeSet);
|
||||
System.out.println(treeSet.contains(1));
|
||||
|
||||
//由于TreeSet拥有排序的效果,所以它能直接获取头尾数据
|
||||
//获取第一个元素first()
|
||||
System.out.println(treeSet.first());
|
||||
//获取最后一个元素last()
|
||||
System.out.println(treeSet.last());
|
||||
|
||||
//获取小于指定元素的最大元素(lower())
|
||||
System.out.println(treeSet.lower(5));
|
||||
|
||||
//获取小于等于指定元素的最大元素(floor())
|
||||
System.out.println(treeSet.floor(3));
|
||||
|
||||
//获取大于指定元素的最小元素(higher())
|
||||
System.out.println(treeSet.higher(2));
|
||||
|
||||
//获取大于等于指定元素的最小元素(ceiling())
|
||||
System.out.println(treeSet.ceiling(3));
|
||||
|
||||
//截取子集:截取子集合(headSet():小于指定元素)
|
||||
SortedSet<Integer> set = treeSet.headSet(5);
|
||||
System.out.println(set);
|
||||
|
||||
//截取子集合(tailSet():大于等于指定元素)
|
||||
SortedSet<Integer> set1 = treeSet.tailSet(2);
|
||||
System.out.println(set1);
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user