Java基础-集合框架-Collection-Set-TreeSet API及常用方法

TreeSet

TreeSet API

Modifier and TypeMethodDescription
booleanadd(E e)将指定的元素添加到此集合(如果尚未存在)。
booleanaddAll(Collection<? extends E> c)将指定集合中的所有元素添加到此集合中。
Eceiling(E e)返回此集合中最小元素大于或等于给定元素,如果没有此元素,则返回 null 。
voidclear()从此集合中删除所有元素。
Objectclone()返回此 TreeSet实例的浅拷贝。
Comparator<? super E>comparator()返回用于对该集合中的元素进行排序的比较器,或null,如果此集合使用其元素的natural ordering 。
booleancontains(Object o)如果此集合包含指定的元素,则返回 true 。
IteratordescendingIterator()以降序返回该集合中的元素的迭代器。
NavigableSetdescendingSet()返回此集合中包含的元素的反向排序视图。
Efirst()返回此集合中当前的第一个(最低)元素。
Efloor(E e)返回此集合中最大的元素小于或等于给定元素,如果没有这样的元素,则返回 null 。
SortedSetheadSet(E toElement)返回此集合的部分的视图,其元素严格小于 toElement 。
NavigableSetheadSet(E toElement, boolean inclusive)返回该集合的部分的视图,其元素小于(或等于,如果 inclusive为真) toElement 。
Ehigher(E e)返回严格大于给定元素的该集合中的最小元素,如果没有此元素则返回 null 。
booleanisEmpty()如果此集合不包含元素,则返回 true 。
Iteratoriterator()以升序返回该集合中的元素的迭代器。
Elast()返回此集合中当前的最后(最高)元素。
Elower(E e)返回这个集合中最大的元素严格小于给定的元素,如果没有这样的元素,则返回 null 。
EpollFirst()检索并删除第一个(最低)元素,或返回 null如果该集合为空。
EpollLast()检索并删除最后一个(最高)元素,如果此集合为空,则返回 null 。
booleanremove(Object o)如果存在,则从该集合中删除指定的元素。
intsize()返回此集合中的元素数(其基数)。
Spliteratorspliterator()在此集合中的元素上创建late-binding和故障切换 Spliterator 。
NavigableSetsubSet(E fromElement, boolean fromInclusive, E toElement, boolean toInclusive)返回该集合的部分的视图,其元素的范围从 fromElement到 toElement 。
SortedSetsubSet(E fromElement, E toElement) 返回此集合的部分的视图,其元素的范围从 fromElement (含)到 toElement ,排他。
SortedSettailSet(E fromElement)返回此组件的元素大于或等于 fromElement的部分的视图。
NavigableSettailSet(E fromElement, boolean inclusive)返回此集合的部分的视图,其元素大于(或等于,如果 inclusive为真) fromElement 。

Sample Code

import java.util.Iterator;
import java.util.TreeSet;

public class TreeSetDemo {
	
	@SuppressWarnings("unused")
	public static void main(String[] args) {
		
		TreeSet<String> treeSetStr = new TreeSet<String>();
		
		TreeSet<String> treeSetNum = new TreeSet<String>();
		
		/**
		 * 
		 */
		treeSetStr.add("A");
		
		/**
		 * 
		 */
		treeSetStr.addAll(treeSetNum);
		
		/**
		 * 返回此集合中最小元素大于或等于给定元素,如果没有此元素,则返回 null。
		 */
		treeSetStr.ceiling("B");
		
		/**
		 * 清除集合所有元素
		 */
		treeSetStr.clear();
		
		/**
		 * 浅克隆
		 */
		treeSetStr.clone();
		
		/**
		 * 返回用于对该集合中的元素进行排序的比较器.
		 */
		treeSetStr.comparator();
		
		/**
		 * 判断集合内是否存在指定元素
		 */
		treeSetStr.contains("A");
		
		/**
		 * 返回一个逆向的迭代器
		 */
		Iterator<String> descIt =  treeSetStr.descendingIterator();
		while(descIt.hasNext()) {
			String str = descIt.next();
			descIt.remove();
		}
		
		/**
		 * 返回此集合中包含的元素的反向排序视图。
		 */
		treeSetStr.descendingSet();
		
		/**
		 * 返回集合中第一个元素
		 */
		treeSetStr.first();
		
		/**
		 * 返回此集合中最大的元素小于或等于给定元素,如果没有这样的元素,则返回 null 。
		 */
		treeSetStr.floor("a");
		
		/**
		 * 遍历器
		 */
		treeSetStr.forEach(
				  x -> {
					  System.out.println(x);
				  }
				);
		
		/**
		 * 返回此集合的部分的视图,其元素严格小于 toElement 。
		 */
		treeSetStr.headSet("toElement");
		
		/**
		 * 返回该集合的部分的视图,其元素小于(或等于,如果 inclusive为真) toElement 。
		 */
		treeSetStr.headSet("toElement", true);
		
		/**
		 * 返回严格大于给定元素的该集合中的最小元素,如果没有此元素则返回 null 。
		 */
		treeSetStr.higher("a");
		
		/**
		 * 集合是否为null
		 */
		treeSetStr.isEmpty();
		
		/**
		 * 返回集合的遍历器
		 */
		treeSetStr.iterator();
		
		/**
		 * 返回此集合最后的元素
		 */
		treeSetStr.last();
		
		/**
		 * 返回这个集合中最大的元素严格小于给定的元素,如果没有这样的元素,则返回 null 。
		 */
		treeSetStr.lower("e");
		
		/**
		 * 返回并删除第一个元素,如果为空返回null
		 */
		treeSetStr.pollFirst();
		
		/**
		 * 返回并删除最后一个元素,如果为空返回null
		 */
		treeSetStr.pollLast();
		
		/**
		 * 删除指定对象
		 */
		treeSetStr.remove("A");
		
		/**
		 * 删除与目标集合共有对象
		 */
		treeSetStr.removeAll(treeSetNum);
		
		/**
		 * 根据条件删除元素
		 */
		treeSetStr.removeIf(
				 x -> x.equals("a")
				);
		
		/**
		 * 保留共有元素
		 */
		treeSetStr.retainAll(treeSetNum);
		
		/**
		 * 返回集合内元素的数量
		 */
		treeSetStr.size();
		
		/**
		 * Spliterator就是为了并行遍历元素而设计的一个迭代器,jdk1.8中的集合框架中的数据结构都默认实现了spliterator
		 */
		treeSetStr.spliterator();
		
		/**
		 * 返回指定范围(范围从 fromElement到 toElement)的元素,前后不包含
		 */
		treeSetStr.subSet("0", "3");
		
		/**
		 * 返回指定范围(范围从 fromElement到 toElement)的元素,前后是否包含由参数确定
		 */
		treeSetStr.subSet("0", true, "3", true);
		
		/**
		 * 返回大于fromElement的元素视图
		 */
		treeSetStr.tailSet("fromElement");
		
		/**
		 * 返回大于fromElement的元素视图,当inclusive 为true返回等于
		 */
		treeSetStr.tailSet("fromElement", true);
		
		/**
		 * 集合 -> 数组 
		 */
		String[] strAry = new String[treeSetStr.size()];
		strAry = treeSetStr.toArray(strAry);
		
		
	}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值