zoukankan      html  css  js  c++  java
  • Java中TreeSet的基本操作

    TreeSet有四种种构造函数可以初始化

    在代码中主要列出了常用的三种:

    构造方法摘要
    TreeSet() 
              构造一个新的空 set,该 set 根据其元素的自然顺序进行排序。
    TreeSet(Collection<? extends E> c) 
              构造一个包含指定 collection 元素的新 TreeSet,它按照其元素的自然顺序进行排序。
    TreeSet(Comparator<? super E> comparator) 
              构造一个新的空 TreeSet,它根据指定比较器进行排序。
    TreeSet(SortedSet<E> s) 
              构造一个与指定有序 set 具有相同映射关系和相同排序的新 TreeSet。
    package test;
    import java.util.TreeSet;
    import java.util.Iterator;
    import java.util.ArrayList;
    import java.util.Arrays;
    //TreeSet是一个不包含重复值的升序集合
    
    public class test7 {
    	
    	public static void main(String[] args) {
    	//集合初始化方法1
    	System.out.println("集合初始化方法1");
    	TreeSet<Integer> set=new TreeSet<>();
    	System.out.println(set.add(1));
    	System.out.println(set.add(1));
    	set.add(3);
    	set.add(10);
    	set.add(2);
    	Iterator <Integer>ite =set.iterator();
    	while(ite.hasNext()){
    		System.out.println(ite.next());
    	}
    	//集合初始化方法1,另外一种构造方法
    	System.out.println("集合初始化方法2");
    	ArrayList <Integer> arr=new ArrayList<Integer>(Arrays.asList(new Integer[]{1,2,6,7,2,8}));
    	TreeSet<Integer> set2=new TreeSet<>(arr);
    	Iterator <Integer>ite1 =set2.iterator();
    	while(ite1.hasNext()){
    		System.out.println(ite1.next());
    	}
    	
    	System.out.println("输出第一个值");
    	System.out.println(set.first());
    	System.out.println("输出最后一个值");
    	System.out.println(set.last());
    	//  返回此 set 中严格大于给定元素的最小元素
    	System.out.println(set.higher(3));
    	//  返回此 set 中大于等于给定元素的最小元素;
    	System.out.println(set.ceiling(3));
    	////  返回此 set 中严格小于给定元素的最小元素;
    	System.out.println(set.lower(3));
    	//  返回此 set 中小于等于给定元素的最小元素;
    	System.out.println(set.floor(3));
    	// SortedSet<E>	subSet(E fromElement, E toElement)  返回此 set 的部分视图,其元素从 fromElement(包括)到 toElement(不包括)。
    	TreeSet<Integer>subset=new TreeSet<>(set.subSet(0, 3));//输出前两个数
    	Iterator <Integer>it =subset.iterator();
    	while(it.hasNext()){
    		System.out.println(it.next());
    	}
    	// SortedSet<E>	headSet(E toElement) 返回此 set 的部分视图,其元素严格小于 toElement。
    	System.out.println("headSet");
    	TreeSet<Integer>headset=new TreeSet<>(set.headSet(3));//输出小于3的子集合
    	Iterator <Integer>it2 =headset.iterator();
    	while(it2.hasNext()){
    		System.out.println(it2.next());
    	}
    	
    	//SortedSet<E>	tailSet(E fromElement) 返回此 set 的部分视图,其元素大于等于 fromElement。
    	System.out.println("tailSet");
    	System.out.println("TreeSet的第三种初始化方法");
    	TreeSet<Integer>tailset=new TreeSet<>(set.tailSet(3));//输出大于等于3的子集合
    	Iterator <Integer>it3 =tailset.iterator();
    	while(it3.hasNext()){
    		System.out.println(it3.next());
    	}
    	
    	// E pollFirst()获取并移除第一个(最低)元素;如果此 set 为空,则返回 null。pollLsat()移除最后一个数
    	System.out.println("pollfist");
    	System.out.println(set.pollFirst());
    	
    	//size()集合大小
    	System.out.println("size()");
    	System.out.println(set.size());
    	
    	// boolean	contains(Object o) 
    	System.out.println("contains()");
    	System.out.println(set.contains(1));
    	
    	//isEmpty()
    	System.out.println("isEmpty()");
    	System.out.println(set.isEmpty());
    	
    	
    	//clear()
    	System.out.println("clear()");
    	set.clear();
    	System.out.println("是否清空集合:"+set.isEmpty());
     }
    }
    

      

  • 相关阅读:
    虚继承virtual public
    My first blog
    mybatis(一)SqlSessionFactory初始化
    dubbo
    设计模式
    基本算法
    redis
    spring cloud eureka
    spring boot
    spring MVC
  • 原文地址:https://www.cnblogs.com/zz22--/p/10761052.html
Copyright © 2011-2022 走看看