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());
}
}

  

Java中TreeMap的基本操作的更多相关文章

  1. java中treemap和treeset实现(红黑树)

    java中treemap和treeset实现(红黑树)   TreeMap 的实现就是红黑树数据结构,也就说是一棵自平衡的排序二叉树,这样就可以保证当需要快速检索指定节点. TreeSet 和 Tre ...

  2. Java中TreeMap集合讲解

    1.TreeSet介绍 TreeSet是一个有序集合,可以以任意顺序将元素插入到集合中,在对集合进行遍历的时候,每个元素将自动按照排序后的顺序呈现.底层使用的是二叉树(更具体点是红黑树)实现,对于元素 ...

  3. java中TreeMap集合的常用方法

    实现Map集合的方法这里就不在讲了 https://www.cnblogs.com/xiaostudy/p/9510763.html public Map.Entry<K,V> ceili ...

  4. 浅谈TreeMap以及在java中的使用

    treemap结构是红黑树 1.先介绍一下平衡二叉树 其特点是一棵空树或它的左右两个子树的高度差的绝对值不超过1,并且左右两个子树都是一棵平衡二叉树.也就是说该二叉树的任何一个子节点,其左右子树的高度 ...

  5. servlet中Java连接数据库后的基本操作

    servlet中Java连接数据库后的基本操作 在eclipse中新建一个工程:login 在Server中新建一个服务器,基本的操作不用说了,在前两天的笔记中可以找到; 需要知道数据库的用户名和密码 ...

  6. Java中HashMap,LinkedHashMap,TreeMap的区别[转]

    原文:http://blog.csdn.net/xiyuan1999/article/details/6198394 java为数据结构中的映射定义了一个接口java.util.Map;它有四个实现类 ...

  7. java集合TreeMap应用---求一个字符串中,每一个字母出现的次数

    package cn.itcast.p1.map.test; import java.util.Iterator; import java.util.Map; import java.util.Tre ...

  8. Java中HashMap和TreeMap的区别深入理解

    首先介绍一下什么是Map.在数组中我们是通过数组下标来对其内容索引的,而在Map中我们通过对象来对对象进行索引,用来索引的对象叫做key,其对应的对象叫做value.这就是我们平时说的键值对. Has ...

  9. java中的TreeMap如何顺序按照插入顺序排序

    java中的TreeMap如何顺序按照插入顺序排序 你可以使用LinkedHashMap  这个是可以记住插入顺序的. 用LinkedHashMap吧.它内部有一个链表,保持插入的顺序.迭代的时候,也 ...

随机推荐

  1. jenkin 不必要的Execute shell执行失败,导致jenkins都失败的解决

    问题:jenkins里配置了多个执行shell,且有后续的执行job任务.但其中一个Execute shell执行失败了导致后续的shell都不执行了 而这个失败的shell并不是一定要执行   解决 ...

  2. 贪吃蛇GamePanel Java实现(二)

    package cn.tcc.snake.tcc.View; import java.awt.Color;import java.awt.Graphics; import javax.swing.JP ...

  3. centos6与centos7区别

    CentOS 6 vs CentOS 7的不同   (1)桌面系统[CentOS6] GNOME 2.x[CentOS7] GNOME 3.x(GNOME Shell) (2)文件系统[CentOS6 ...

  4. Hdu1805-Expression(表达式树模版题+层序遍历树+栈的基本应用)

    2018-11-23-02:27:37 原题链接 题目描述: 题目一目了然. 本题思路: 本题很容易能想到是构建表达式树然后按照层序逆序输出即可. AC代码: #include <cstdio& ...

  5. 程序员的数学 三册数学,概率统计、线性代数pdf

    程序员的数学1 2012.pdf 2012版 程序员的数学2 概率统计 ,平冈和幸,(日)堀玄著 ,P4006 2015.pdf 2015版 程序员的数学3-线性代数 2016.pdf 2016版 如 ...

  6. MDK生成.bin

    方法1: 默认选择编译输出的路径输出bin fromelf.exe --bin -o "$L@L.bin" "#L" 保存编译 方法2: 在要输出的目录下,新建 ...

  7. css定位研究

    css的定位是很重要的一个知识点,要学会网页布局,一定要先把定位弄清楚,今天抽空整理一下这方面的知识. 1.块级元素和行内元素(内联元素) 块级元素:display值为block的元素就是块级元素,比 ...

  8. python中类变量和成员变量、局部变量总结

    class Member(): num= #类变量,可以直接用类调用,或用实例对象调用 def __init__(self,x,y): self.x=x #实例变量(成员变量),需要它是在类的构造函数 ...

  9. linux命令学习之:top

    top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源占用状况,类似于Windows的任务管理器. top显示系统当前的进程和其他状况,是一个动态显示过程,即可以通过用户按键来不 ...

  10. Java面试基础知识(1)

    1.final, finally, finalize的区别 final:修饰符(关键字)如果一个类被声明为final,没有子类也不能被继承.因此一个类不能既被声明为 abstract的,又被声明为fi ...