Set、Map集合、栈、队列
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集合、栈、队列相关推荐
- Java API(十五):Queue队列、Deque栈、Map集合
文章目录 Java API 一.Queue队列 1.Queue接口及LinkedList实现 2.Queue常用方法 二.Deque栈 1.Deque接口及LinkedList实现 2.Deque常用 ...
- 常见的数据结构:栈 队列 数组 链表 红黑树——List集合 _ HashSet集合、可变参数 collections集合 Map集合
2021-06-07复习java 一.常见的数据结构 栈(先进后出) 队列 数组 链表 红黑树 二.List集合_介绍&常用方法 ArrayList集合 Linkedlist集合 三.Hash ...
- java map 队列_Java:queue队列,map集合
该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 Queue: 基本上,一个队列就是一个先入先出(FIFO)的数据结构 Queue接口与List.Set同一级别,都是继承了Collection接口.Lin ...
- 【Python基础学习】基本数据结构:列表、元组、栈、字典、集合与队列
[Python基础学习]基本数据结构:列表.元组.栈.字典.集合与队列 Python的基本数据结构中,包含了列表.元组等一系列数组式数据结构,但各个结构各有不同.因此单独列出来,分析相同与不同 列表( ...
- java中定义一个栈容器_Java 容器之 Connection栈队列及一些常用
集合家族图 ---|Collection: 单列集合 ---|List: 有存储顺序 , 可重复 ---|ArrayList: 数组实现 , 查找快 , 增删慢 ---|LinkedList: 链表实 ...
- Java 容器之 Connection栈队列及一些常用
集合家族图 ---|Collection: 单列集合---|List: 有存储顺序 , 可重复---|ArrayList: 数组实现 , 查找快 , 增删慢 ---|LinkedList: 链表实现 ...
- java中list,set,map集合的区别,及面试要点
Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...
- Java-Collection集合和Map集合总结
本文欢迎转载,转载前请联系作者,经允许后方可转载.转载后请注明出处,谢谢! http://blog.csdn.net/colton_null 作者:喝酒不骑马 Colton_Null from CSD ...
- JavaEE - 集合 - Map集合
集合 集合是Java API所提供的一系列类,可以用于动态存放多个对象 (集合只能存对象) 集合类全部支持泛型,是一种数据安全的用法. 集合和数组的区别: 长度区别:数组固定.集合可变 内容区别: 数 ...
- 【Java基础】集合总结(三)——Queue集合、Map集合
一.Queue集合 Queue用于模拟队列这种数据结构,队列的特点是"先进先出"(FIFO).队列的头部保存在队列中存放时间最长的元素,队列的尾部保存在队列中存放时间最短的元素.新 ...
最新文章
- 简单配置Nginx的脚本启动
- Redis和消息队列使用实战
- mysql读写分离有用吗_MySQL的使用中实现读写分离的教程
- H5弹窗,弹出toast(横竖屏通用)
- java 扩展数据类型_005Java学习--数据类型及拓展
- CRM Transaction处理中的权限控制
- 正态分布函数_从微积分角度证明“正态分布密度函数”
- Java多线程学习九:如何正确关闭线程池?shutdown 和 shutdownNow 的区别
- Verizon收购雅虎交易完成 硅谷第一美女梅耶尔辞职
- 修改springmvc返回ajax方式的json数据
- sql之stuff函数学习笔记
- ArcMAP 设置图层透明度
- 元旦用SpringBoot撸了个博客网站送给大家
- 【MES】MES能为制造企业做什么,解决什么问题?
- win7无法看到工作组计算机,Win7系统无法查看工作组问题的解决方法
- 如何检查DirectX的版本(用于Windows Phone Developer Tools的安装检查)
- 把计算机器显示桌面,怎样将电脑显示器和桌面匹配
- Python核心编程-Amy老师第七讲课程作业
- php中常用的输出语句及其区别
- LeetCode题解(0594):计算最长和谐子序列(Python)
热门文章
- .vimrc php,修改home目录下的.vimrc文件,vim配置php高亮显示
- VTK模块学习(一)
- CNN看清世界——浅谈四个经典网络的差异
- 深度学习(二十一)基于FCN的图像语义分割
- 照片尺寸大小对照表_贴片led灯珠型号对照表在手,贴片灯珠选型从此不愁!
- java中面向对象租车问题_答答租车系统-Java面向对象的学习
- IDEA Docker 插件安装
- 硬盘使用GPT方式安装windows 10方法
- 计算机网络技术放块队解说词,基于《计算机网络技术》课程多媒体课件制作与设计.doc...
- python定义栈_Python栈实现