当前位置: 首页 > news >正文

怎么用java做html5网站吗济南网络优化哪家专业

怎么用java做html5网站吗,济南网络优化哪家专业,网站的建设方法,电商网站开发视频教程一、本期教学目标 学习LinkedHashMap集合的概念及特点。学习LinkedHashMap存储结构。学习LinkedHashMap集合常用方法及示例代码演示。 二、正文 1、概述 我们学习了map接口之HashMap集合,今天我们要来学习map接口的另一个实现类-LinkedHashMap,不知道…

一、本期教学目标

  • 学习LinkedHashMap集合的概念及特点。
  • 学习LinkedHashMap存储结构。
  • 学习LinkedHashMap集合常用方法及示例代码演示。

二、正文

1、概述

        我们学习了map接口之HashMap集合,今天我们要来学习map接口的另一个实现类-LinkedHashMap,不知道你们还记得我在一开始介绍Map集合的时候,就有提过这个集合,它也是在日常项目开发中必须要掌握的一个双列集合,也是在日常面试中的高频题,如果你没掌握,相对面试还是处于弱势的。

        听我这么一说很能很多小伙伴就会非常的好奇了,那LinkedHashMap究竟是啥?那就由我来给大家进行一个全面的讲解吧。

        LinkedHashMap集合,我们先来看下它的类结构定义,请看如下:

public class LinkedHashMap<K,V> extends HashMap<K,V> implements Map<K,V>{}

        不难看出,它是HashMap的子类,所以对于LinkedHashMap自然继承HashMap的所有特性。例如:linkedHashMap的元素存取过程与HashMap集合的存取过程基本类似,只是说在细节上实现会稍有不同,这也是取决于LinkedHashMap本身的特性所决定的,因为LinkedHashMap要额外维护一个双向链表。

        对于LinkedHashMap,见名知意,它是具有hash散列的功能, 同时也具备元素顺序。总而言之,LinkedHashMap就是一个标准的HashMap与LinkedList的融合体。

2、特点

        那我们说完LinkedHashMap,接下来肯定就要对它的特点做一个了解,这也是为了让大家更好的掌握。

  1. LinkedHashMap的存储单元类型使用了Entry类作为存储类,继承自HashMap的node类,Entry类添加了before和after两个前后指针。
  2. LinkedHashMap使用的数据结构有数组、单向链表、双向链表、红黑树。
  3. LinkedHashMap的初始容量大小、负载因子默认下大小、负载因子和HashMap一样。
  4. LinkedHashMap是非线程安全的。并发出错时,会快速失败,抛出该异常ConcurrentModificationException。
  5. ... ...

3、相关源码概念解释

  • transient LinkedHashMap.Entry<K,V> head;

解释:头结点,同时也是最早插入的节点。

  • transient LinkedHashMap.Entry<K,V> tail;

解释:尾结点,同时也是最后插入的节点。

  • static class Entry<K,V> extends HashMap.Node<K,V> {};

解释:继承 Node,为数组的每个元素增加了 before 和 after 属性。

  • final boolean accessOrder;

解释:控制两种访问模式的字段,默认 false。true表示:按照访问顺序,会把经常访问的 key 放到队尾。false表示:按照插入顺序提供访问

4、实例演示

        接下来就是实战环节了,对于一个集合,最关心的就是它的遍历方式了,对于LinkedHashMap集合,它的遍历方式也跟HashMap遍历一致,比如通过keySet()按键取值方式,也可以根据entrySet()方法,或者就是使用Iterator迭代器。

        如下我就给大家演示一下如何entrySet()方法来进行map遍历吧。像其他的遍历方式,这个就当布置课后作业自行完成了哈。

演示代码如下:

    @Testpublic void testLinkedHashMap() {//创建一个LinkedHashMap集合Map<String, String> map = new LinkedHashMap<>();//添加元素map.put("黄忠", "射手");map.put("吕布", "战士");map.put("妲己", "法师");Set<Map.Entry<String, String>> entrySet = map.entrySet();for (Map.Entry<String, String> entry : entrySet) {//解析entry对象String key = entry.getKey();String value = entry.getValue();System.out.println(key + "所对应的值为:" + value);}}

控制台输出结果:

黄忠所对应的值为:射手
吕布所对应的值为:战士
妲己所对应的值为:法师

        而且,有一点,需要大家注意的,不知道大家发现了没有,输出结果跟我put顺序完全一致,这也就是证实了一点,LinkedHashMap的插入有序的(根据按插入顺序来顺序取出元素),而HashMap是无序。

        可以请大家再看个实例:如下:

http://www.ds6.com.cn/news/82833.html

相关文章:

  • 泉州网站快速排名提升代理公司注册
  • 珠海新盈科技有限公 网站建设杭州百家号优化
  • 网站开发团队 分工郑州seo外包顾问热狗
  • 武汉山水人家装饰公司seo技术大师
  • 网站修改后怎么上传关键词在线播放免费
  • 洛阳霞光网络科技淄博seo推广
  • 做网站外国的印度疫情为何突然消失
  • 五泉山网页设计宣传网站制作昆明百度推广开户
  • 宝塔做的网站网页打不开企业培训课程
  • 网站是否有备案百度账号怎么改用户名
  • 广州旅游网站建设提高工作效率的工具
  • drupal 网站开发杭州网络优化公司排名
  • python做网站框架怎么做网络平台
  • 双鸭山网站建设百度搜索引擎优化的养成良好心态
  • 济南做网站公司有哪些石狮seo
  • vs做网站不用建项目google推广平台怎么做
  • 郑州市政府网站的建设与发展站长之家网站流量查询
  • wordpress 视频 去广告郑州见效果付费优化公司
  • 河北网站建设搭建永久免费开网店app
  • 网页设计与制作实例教程方其桂提升seo排名的方法
  • 建设假网站广州网站优化公司
  • 专门做服装批发的网站吗磁力狗bt
  • 甘肃建设厅网站执业注册中心seo研究中心
  • baidu网站建设郑州网站建设十大公司
  • 大连建站平台软文素材库
  • 网站设计的公司企业邮箱关键词搜索网站
  • 驻马店360网站建设网络推广方式有哪几种
  • 有什么网站可以帮人做模具吗汕头seo优化
  • 商务网站建设难不难免费长尾词挖掘工具
  • 微信h5制作小程序有哪些seo搜索引擎优化是什么