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

day57 集合 List Set Map

List实现类

List接口特点:元素有序 可重复

Arraylist 可变数组

        jdk 8 以前Arraylist容量初始值10

         jdk8 之后初始值为0,添加数据时,容量为10;

        ArrayList与Vector的区别?

        

LinkList:双向链表

                优点:不连续存储,随机添加和删除操作方法

                缺点:不连续存储,遍历速度慢

        有链表头和链表尾

        新增针对链表头和链表尾的操作方法

                

Set集合及实现类

Set接口 extends Collection 特点:无序 唯一

HashSet

TreeSet

Map集合及实现类

Map集合   以key-value存储数据

        key:无序唯一

        value:无序可重复

        key-value 映射关系唯一

  1 添加方法
                    V put(K key, V value)   将指定的值与此映射中的指定键关联(可选操作)。
            2 删除
                      void clear()    从此映射中移除所有映射关系(可选操作)。
                       V remove(Object key)  如果存在一个键的映射关系,则将其从此映射中移除(可选操作)。
                       boolean  remove(Object key, Object value) : 仅当指定的密钥当前映射到指定的值时删除该条目。
           3 改
                        V put(K key, V value)   将指定的值与此映射中的指定键关联(可选操作)。
                        V replace(K key, V value)  只有当目标映射到某个值时,才能替换指定键的条目。
                       boolean replace(K key, V oldValue, V newValue)  仅当当前映射到指定的值时,才能替换指定键的条目。
            4 查:
                    boolean containsKey(Object key)  如果此映射包含指定键的映射关系,则返回 true。
                     boolean containsValue(Object value)  如果此映射将一个或多个键映射到指定值,则返回 true。
                     V get(Object key)   返回指定键所映射的值;如果此映射不包含该键的映射关系,则返回 null。
                     V getOrDefault(Object key, V defaultValue) :     返回到指定键所映射的值,或 defaultValue如果此映射包含该键的映射。
            5 遍历方法
                     Set<Map.Entry<K,V>> entrySet()   返回此映射中包含的映射关系的 Set 视图。
                    Set<K> keySet() :  返回此映射中包含的键的 Set 视图。
                      Collection<V> values() 回此映射中包含的值的 Collection 视图。
                      forEach()
             6 其他方法
                 boolean isEmpty() : 如果此映射未包含键-值映射关系,则返回 true。
                  int size()   返回此映射中的键-值映射关系数。

HashMap

                         HashMap的初始容量16 加载因子0.75扩容为2为2倍

                ​​​​​​​        ​​​​​​​ Hashtable初始容量11 加载因子0.75

扩容为2倍+1

                        HashMap key,value可以为null

                        HashTable key,value都不可以为null       ​​​​​​​        ​​​​​​​         

HashMap中的key如何去除重复项?

                调用key的hashCode与equals方法

   TreeMap:二叉树

                左小,右大的方式存储

                读取:按中序(左-中-右)

                key:通过比较规则,排序并去除重复

                注意:key 必须为同一种数据类型的值。不能出现null值

http://www.lryc.cn/news/308332.html

相关文章:

  • 蓝桥杯:真题讲解3(C++版)附带解析
  • 继续预训练对大语言模型的影响
  • 关于空频变换的知识点
  • 纯css实现-让字符串在文字少时显示为居中对齐,而在文字多时显示为左对齐
  • 初学HTMLCSS——盒子模型
  • 吸猫毛空气净化器哪个好?推荐除猫毛好的宠物空气净化器品牌
  • 【玩转408数据结构】线性表——双链表、循环链表和静态链表(线性表的链式表示 下)
  • 分布式概念
  • vue中的ref/reactive区别及原理
  • 深度学习介绍与环境搭建
  • QT C++实践|超详细数据库的连接和增删改查操作|附源码
  • matlab:涉及复杂函数图像的交点求解
  • Unity(第二十二部)官方的反向动力学一般使用商城的IK插件,这个用的不多
  • nginx反向代理,获取客户端ip
  • 13 Codeforces Round 886 (Div. 4)G. The Morning Star(简单容斥)
  • CLion 2023:专注于C和C++编程的智能IDE mac/win版
  • 数据可视化基础与应用-02-基于powerbi实现连锁糕点店数据集的仪表盘制作
  • 前后端分离Vue+nodejs酒店公寓客房预订管理系统udr7l-java-php-django-springboot
  • VUE打包的dist文件放到后端一起发布
  • React入门之React_渲染基础用法和class实例写法
  • Git自动忽略dll文件的问题
  • sql中如何实现递归
  • GPT 的基础 - T(Transformer)
  • 微信小程序 --- 常用样式和组件
  • 深圳智能制造半导体芯片行业源代码防泄密完整解决方案
  • Unity UI适配规则和对热门游戏适配策略的拆解
  • 嵌入式学习day25 Linux
  • Oracle数据泵跨大版本迁移数据库
  • 如何在Win系统从零开始搭建Z-blog网站,并将本地博客发布到公网可访问
  • sawForceDimensionSDK安装,sigma7+ros