1. Set中不保存重复的元素。

2.Set中最常用的是测试归属性,可以查询某个对象是否存在某个Set中。查找成了Set中最常用的操作。

3.HashSet使用了散列。TreeSet将元素存储在红-黑树数据结构中。如果你想对结果排序,一种方式是使用Treeset来代替Hashset

4.如果要对结果排序使用TreeMap,否则使用HashMap。

5.栈(Stack)通常是指“后进先出”(LIFO)的容器。

6.队列(Queue)通常是指“先进先出”(FIFO)的容器。

 1     int count =0;
 2     //1.栈
 3     Stack<String> stack = new Stack<String>();
 4     for(String s: "I LOVE YOU".split(" ")){
 5         stack.push(s);
 6     }
 7     System.out.println("1.栈:先进后出(LIFO)");
 8     while(!stack.empty()){
 9         System.out.print(stack.pop()+" ");
10     }
11     System.out.println("\n");
12
13
14     //2.HashSet
15     Random rand = new Random(47);
16     Set<Integer> set01 = new HashSet<Integer>();
17     for(int i =0 ;i<1000;i++){
18         set01.add(rand.nextInt(31));
19     }
20     Iterator<Integer> itr = set01.iterator();
21     System.out.println("2.HashSet:未排序");
22     while(itr.hasNext()){
23         System.out.print(itr.next()+" ");
24     }
25     System.out.println("\n");
26
27
28     //3.TreeSet
29     Set<Integer> set02 = new TreeSet<Integer>();
30     set02.addAll(set01);
31     Iterator<Integer> itr02 = set02.iterator();
32     System.out.println("3.TreeSet:排序");
33     while(itr02.hasNext()){
34         System.out.print(itr02.next()+" ");
35     }
36     System.out.println("\n");
37
38     //4.HashMap
39     Map<Integer,Integer> hashMap = new HashMap<Integer,Integer>();
40     Object[] obj =set01.toArray();
41     for(int i=1;i<set01.size();i++){
42         hashMap.put(i,(Integer) obj[i]);
43     }
44     System.out.println("4.HashMap");
45     for(Integer integer:hashMap.keySet()){
46         System.out.print(integer+":"+hashMap.get(integer)+" | ");
47         count++;
48         if(count==10){
49             System.out.println();
50             count=0;
51         }
52     }
53     System.out.println("\n");
54
55     //5.TreeMap
56     Map<Integer,Integer> treeMap = new TreeMap<Integer,Integer>();
57     for(int i=1;i<set01.size();i++){
58         treeMap.put(i,(Integer) obj[i]);
59     }
60     System.out.println("5.TreeMap:排序");
61     for(Integer n:treeMap.keySet()){
62         System.out.print(n+":"+treeMap.get(n)+" | ");
63         count++;
64         if(count==10){
65             System.out.println();
66             count=0;
67         }
68     }
69
70     //6.队列
71     System.out.println("\n");
72     System.out.println("6.队列:先进先出");
73     Queue<String> queue = new LinkedList<String>();
74     for(String str:"I LOVE YOU".split(" ")){
75         queue.offer(str);
76     }
77     System.out.println(queue);

输出结果:

转载于:https://www.cnblogs.com/maduar/p/4362988.html

Set、Map集合、栈、队列相关推荐

  1. Java API(十五):Queue队列、Deque栈、Map集合

    文章目录 Java API 一.Queue队列 1.Queue接口及LinkedList实现 2.Queue常用方法 二.Deque栈 1.Deque接口及LinkedList实现 2.Deque常用 ...

  2. 常见的数据结构:栈 队列 数组 链表 红黑树——List集合 _ HashSet集合、可变参数 collections集合 Map集合

    2021-06-07复习java 一.常见的数据结构 栈(先进后出) 队列 数组 链表 红黑树 二.List集合_介绍&常用方法 ArrayList集合 Linkedlist集合 三.Hash ...

  3. java map 队列_Java:queue队列,map集合

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构 Queue接口与List.Set同一级别,都是继承了Collection接口.Lin ...

  4. 【Python基础学习】基本数据结构:列表、元组、栈、字典、集合与队列

    [Python基础学习]基本数据结构:列表.元组.栈.字典.集合与队列 Python的基本数据结构中,包含了列表.元组等一系列数组式数据结构,但各个结构各有不同.因此单独列出来,分析相同与不同 列表( ...

  5. java中定义一个栈容器_Java 容器之 Connection栈队列及一些常用

    集合家族图 ---|Collection: 单列集合 ---|List: 有存储顺序 , 可重复 ---|ArrayList: 数组实现 , 查找快 , 增删慢 ---|LinkedList: 链表实 ...

  6. Java 容器之 Connection栈队列及一些常用

    集合家族图 ---|Collection: 单列集合---|List: 有存储顺序 , 可重复---|ArrayList: 数组实现 , 查找快 , 增删慢 ---|LinkedList: 链表实现 ...

  7. java中list,set,map集合的区别,及面试要点

    Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...

  8. Java-Collection集合和Map集合总结

    本文欢迎转载,转载前请联系作者,经允许后方可转载.转载后请注明出处,谢谢! http://blog.csdn.net/colton_null 作者:喝酒不骑马 Colton_Null from CSD ...

  9. JavaEE - 集合 - Map集合

    集合 集合是Java API所提供的一系列类,可以用于动态存放多个对象 (集合只能存对象) 集合类全部支持泛型,是一种数据安全的用法. 集合和数组的区别: 长度区别:数组固定.集合可变 内容区别: 数 ...

  10. 【Java基础】集合总结(三)——Queue集合、Map集合

    一.Queue集合 Queue用于模拟队列这种数据结构,队列的特点是"先进先出"(FIFO).队列的头部保存在队列中存放时间最长的元素,队列的尾部保存在队列中存放时间最短的元素.新 ...

最新文章

  1. 简单配置Nginx的脚本启动
  2. Redis和消息队列使用实战
  3. mysql读写分离有用吗_MySQL的使用中实现读写分离的教程
  4. H5弹窗,弹出toast(横竖屏通用)
  5. java 扩展数据类型_005Java学习--数据类型及拓展
  6. CRM Transaction处理中的权限控制
  7. 正态分布函数_从微积分角度证明“正态分布密度函数”
  8. Java多线程学习九:如何正确关闭线程池?shutdown 和 shutdownNow 的区别
  9. Verizon收购雅虎交易完成 硅谷第一美女梅耶尔辞职
  10. 修改springmvc返回ajax方式的json数据
  11. sql之stuff函数学习笔记
  12. ArcMAP 设置图层透明度
  13. 元旦用SpringBoot撸了个博客网站送给大家
  14. 【MES】MES能为制造企业做什么,解决什么问题?
  15. win7无法看到工作组计算机,Win7系统无法查看工作组问题的解决方法
  16. 如何检查DirectX的版本(用于Windows Phone Developer Tools的安装检查)
  17. 把计算机器显示桌面,怎样将电脑显示器和桌面匹配
  18. Python核心编程-Amy老师第七讲课程作业
  19. php中常用的输出语句及其区别
  20. LeetCode题解(0594):计算最长和谐子序列(Python)

热门文章

  1. .vimrc php,修改home目录下的.vimrc文件,vim配置php高亮显示
  2. VTK模块学习(一)
  3. CNN看清世界——浅谈四个经典网络的差异
  4. 深度学习(二十一)基于FCN的图像语义分割
  5. 照片尺寸大小对照表_贴片led灯珠型号对照表在手,贴片灯珠选型从此不愁!
  6. java中面向对象租车问题_答答租车系统-Java面向对象的学习
  7. IDEA Docker 插件安装
  8. 硬盘使用GPT方式安装windows 10方法
  9. 计算机网络技术放块队解说词,基于《计算机网络技术》课程多媒体课件制作与设计.doc...
  10. python定义栈_Python栈实现