31-java中知识总结:list, set, map, stack, queue
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.LinkedList;
import java.util.List;
import java.util.Queue;
import java.util.Scanner;
import java.util.Stack; import javax.management.Query; public class Main1 { public static Scanner cin = new Scanner(System.in); public static void main(String[] args) { /********************链表**************************/
//定义一个数组链表
List[] v = new ArrayList[20004];
//注意定义的数组链表,要组个new,不然会空指针异常
for(int i = 0; i <= 10; i++) {
v[i] = new ArrayList<Integer>();
}
//添加元素与输出
v[0].add(2);
v[0].add(3);
System.out.println(v[0].size() + "; v[0]: " + v[0].toString());
v[0].remove(0); //弹出下标为0 的元素
System.out.println(v[0].size() + "; v[0]: " + v[0].toString());
/*--------------
结果是:
2; v[0]: [2, 3]
1; v[0]: [3] * */
System.out.println("******************"); /********************队列**************************/
//定义队列
Queue<Integer> mq = new LinkedList<>();
mq.add(2); //添加元素
mq.add(3);
System.out.println("mq: " + mq.toString());
int x = mq.peek(); //取队列第一个元素
System.out.println("队列第一个元素:" + x);
mq.poll(); //弹出队列第一个元素
System.out.println("弹出后mq: " + mq.toString());
/*--------------
结果是:
mq: [2, 3]
队列第一个元素:2
弹出后mq: [3] * */
System.out.println("******************"); /********************栈**************************/
//定义栈
Stack<Integer> sta = new Stack<>();
sta.push(2);
sta.push(3);
System.out.println("sta: " + sta.toString());
// int x2 = sta.get(0);
int x2 = sta.peek(); //得到栈顶元素
System.out.println("栈顶元素:" + x2);
sta.pop(); //弹出栈顶元素
System.out.println("sta: " + sta.toString());
/*--------------
结果是:
sta: [2, 3]
栈顶元素:3
sta: [2] * */
System.out.println("******************"); /********************hashMap**************************/
//hashMap
HashMap<Integer, String> map = new HashMap<>();
// 添加键值对
map.put(2, " this is 2");
map.put(3, " this is 3");
System.out.println("map: " + map.toString());
// 用键取值
System.out.println("key = 2 对应的值为:" + map.get(2));
// 得到键的集合
System.out.println(map.keySet());
// 覆盖原来键的值
map.put(2, " new an value");
System.out.println("key = 2 对应的值为:" + map.get(2));
// 查看是否包含每个键
System.out.println("是否包含键为2的键值对:" + map.containsKey(2));
// 删除某个键值对
map.remove(2);
System.out.println("map: " + map.toString());
/*--------------
结果是:
map: {2= this is 2, 3= this is 3}
key = 2 对应的值为: this is 2
[2, 3]
key = 2 对应的值为: new an value
是否包含键为2的键值对:true
map: {3= this is 3} * */
System.out.println("******************"); /********************hashSet**************************/
// hashSet
HashSet<Integer> set = new HashSet<>();
set.add(2);
set.add(3);
System.out.println("set: " + set.toString());
// 判断某个元素是否存在
System.out.println("判断是否包含2:" + set.contains(2));
// 删除某个值
set.remove(2);
System.out.println("set: " + set.toString());
/*--------------
结果是:
set: [2, 3]
判断是否包含2:true
set: [3] * */
System.out.println("******************");
}
}
31-java中知识总结:list, set, map, stack, queue的更多相关文章
- Java中的集合(十四) Map的实现类LinkedHashMap
Java中的集合(十四) Map的实现类LinkedHashMap 一.LinkedHashMap的简介 LinkedHashMap是Map接口的实现类,继承了HashMap,它通过重写父类相关的方法 ...
- Java中的集合(十三) 实现Map接口的Hashtable
Java中的集合(十三) 实现Map接口的Hashtable 一.Hashtable简介 和HashMap一样,Hashtable采用“拉链法”实现一个哈希表,它存储的内容是键值对(key-value ...
- Java中的集合(十一) 实现Map接口的TreeMap
Java中的集合(十一) 实现Map接口的TreeMap 一.TreeMap简介(基于JDK1.8) TreeMap是基于红黑树数据结构,是一个key-value的有序集合,该映射根据其键的自然顺序进 ...
- 基础知识《六》---Java集合类: Set、List、Map、Queue使用场景梳理
本文转载自LittleHann 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E6%8E%92%E5%BA%8F% ...
- JAVA中写时复制(Copy-On-Write)Map实现
1,什么是写时复制(Copy-On-Write)容器? 写时复制是指:在并发访问的情景下,当需要修改JAVA中Containers的元素时,不直接修改该容器,而是先复制一份副本,在副本上进行修改.修改 ...
- java中 json和bean list map之间的互相转换总结
JSON 与 对象 .集合 之间的转换 JSON字符串和java对象的互转[json-lib] 在开发过程中,经常需要和别的系统交换数据,数据交换的格式有XML.JSON等,JSON作为一个轻量级 ...
- Java中的集合(Set,List,Map)
******************collections类总结*************************** JAVA集合主要分为三种类型: Set(集) List(列表) ...
- 2018.3.31 java中的递归
java中的递归 1.概念 定义一个方法时,出现本方法调用本方法的过程,称之为递归 2.特点 必然有一个边界条件 使用递归代码往往更简洁,可读性强 3.什么时候使用递归 n的阶乘和n的累加定义 f(n ...
- Java集合类: Set、List、Map、Queue使用场景梳理
本文主要关注Java编程中涉及到的各种集合类,以及它们的使用场景 相关学习资料 http://files.cnblogs.com/LittleHann/java%E9%9B%86%E5%90%88%E ...
- Java集合类: Set、List、Map、Queue使用
目录 1. Java集合类基本概念 2. Java集合类架构层次关系 3. Java集合类的应用场景代码 1. Java集合类基本概念 在编程中,常常需要集中存放多个数据.从传统意义上讲,数组是我们的 ...
随机推荐
- 尚硅谷springboot学习23-SpringMVC配置
1. Spring MVC auto-configuration 以下是SpringBoot对SpringMVC的默认配置:(WebMvcAutoConfiguration) Inclusion of ...
- js判断对象
一般学java的小伙伴,刚开始写js时如果遇到要判断一个字符串是否不为空,往往会这样写 if(str != undefined && str != null && st ...
- js 改变颜色值
/** * 获取颜色值 */ const color2RGB = (color) => { if (typeof color !== 'string' || (color.length !== ...
- JavaScript 从定义到执行,你应该知道的那些事
JavaScript从定义到执行,JS引擎在实现层做了很多初始化工作,因此在学习JS引擎工作机制之前,我们需要引入几个相关的概念:执行环境栈.执行环境.全局对象.变量对象.活动对象.作用域和作用域链等 ...
- C# WINFORM 打包数据库
实现效果:安装项目时直接附加数据库. 1.首先在需要部署的项目的解决方案资源管理器中新建一个安装项目 2.在安装项目的文件视图中,右键[应用程序文件夹]->[添加]->[项目输出] ...
- js对象和jquery对象互相转换
javascript对象转成jquery对象 jquery对象转成javascript对象
- ValueError: too many values to unpack tensorflow
使用tensorflow 的时候报错: result ,_= sess.run(ops)ValueError: too many values to unpack 其实是ops里面不止一个,返回解压成 ...
- vue 学习笔记1
1.子组件在父组件的原生的事件例如一个child子组件的点击事件<child @click="handleClick">点击</child>这种情况在父组件 ...
- 安装 Laravel 遇到问题?你需要更新 composer.json 文件
转载自 https://9iphp.com/web/laravel/laravel-install-fail-update-composer.html 在使用最新版 Composer 安装 Larav ...
- mysql 5.7 基于GTID 主从同步的1236故障处理(其它事务故障等同)
登录从库 stop slave; 查看执行事务 show slave status\G Retrieved_Gtid_Set: Executed_Gtid_Set: ee3bdb44-f6a1-11 ...