java网课|Map&线程

一、Map<k,v>

Map是啥

  • 键和值一一对应的关系–》映射
  • 有一些集合中的元素就是一一对应的
  •  	如:IP地址与主机名/身份证号与个人
    

在这里插入图片描述

特点

  • 键key是唯一的,值可以重复
  • key和value的数据类型可以不同
  • 一一对应
  • 通过键找对应的值
  • 双列集合(与collecion不同的地方)

Map用在哪

  • 元素关系为一一对应时

Map怎么用

Map的常用【实现类】

HashMap<k,v>:

  •  底层采用的**哈希表结构**,查找速度快![在这里插入图片描述](https://img-blog.csdnimg.cn/20201216100407386.png)
    
  •  存储顺序不能保证一致,**无序集合**
    

LinkedHashMap extends hashmap:

  •  底层**哈希表+链表结构**
    
  •  存储顺序可以**保证一致**,可预知的迭代顺序
    

map中的方法

put/get/contaionsKey/keyset/entryset

public V put(K key,V value)

在这里插入图片描述
可以直接放:返回null,即一个容器放出去后容器为空了
要替代:即key原来对应的那个被踢出来了,所以返回他

public V remove(Object key)

在这里插入图片描述
删除的是key和value一对
注意:此处map.remove返回的是Integer等包装类类型,如若不是:在这里插入图片描述
用int:
倒是可以自动拆箱
但是若返回的是null,null不能给int,会抛出空指针异常
空可以赋值给包装类,但是不能赋值给空指针类型

public V get(Object key)在这里插入图片描述

boolean containsKey(Objcet key)

  • 值存在,true,反之false

Map集合遍历键找值

创建Map集合对象并放入值

在这里插入图片描述

Map<String,Interger>map=new HashMap<>();
map.put("a”,222);//a是key

取出key值

Set<K>keySet();//存储到Set集合中

使用迭代器/增强for循环遍历set集合获取每一个key
👇
根据key又可以获取value!

即一一对应的关系

Map集合遍历键值对

通过键找值

  • 先把map集合中所有的key取出来存储到set集合中SetkeySet,用keySet()方法
  • 使用迭代器/增强for遍历set,获取map集合的每一个key
  • 再通过key获取value,通过get()方法
    在这里插入图片描述

二、线程

并发与并行:

并发:
两个或多个事件在同一个时间段内发生
并行:
两个或多个事件在同一时刻发生(【同时】)

注意区别!

在这里插入图片描述

啥是进程?

通俗一点:
点击一个程序,当它要进入内存时,进入到内存的程序叫进程

任务管理器–》结束进程:即将进程从内存中清除

什么是线程?

首先需要知道:

电脑上的Inter Inter Core(核心)i7 8866:
4核心8线程

8线程:同时执行8个任务的意思

点击一个功能(清理垃圾/病毒查杀)
👇
开启了一条【应用程序】到【cpu】的执行路径
cpu:对数据进行运算,指挥干活
👇
这个【路径】就是【线程】

线程是进程中的一个执行单元
点击应用----》进程----》不同线程
在这里插入图片描述
多线程的好处:

  • 效率高
  • 线程之间互不影响

主线程是啥

  • 执行main方法时(是由jvm执行的)
  • main会进入栈内存
  • jvm会开辟一条【main()通往cpu的执行路径】
  • cpu可以通过这条路径执行main方法
  • 这条路径的名字:【main(主)线程】

说白了就是main到cpu的路径
在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值