day57 集合 List Set Map

2024-03-01 12:28
文章标签 set list map 集合 day57

本文主要是介绍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值

这篇关于day57 集合 List Set Map的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/762441

相关文章

C#比较两个List集合内容是否相同的几种方法

《C#比较两个List集合内容是否相同的几种方法》本文详细介绍了在C#中比较两个List集合内容是否相同的方法,包括非自定义类和自定义类的元素比较,对于非自定义类,可以使用SequenceEqual、... 目录 一、非自定义类的元素比较1. 使用 SequenceEqual 方法(顺序和内容都相等)2.

Go语言利用泛型封装常见的Map操作

《Go语言利用泛型封装常见的Map操作》Go语言在1.18版本中引入了泛型,这是Go语言发展的一个重要里程碑,它极大地增强了语言的表达能力和灵活性,本文将通过泛型实现封装常见的Map操作,感... 目录什么是泛型泛型解决了什么问题Go泛型基于泛型的常见Map操作代码合集总结什么是泛型泛型是一种编程范式,允

JSON字符串转成java的Map对象详细步骤

《JSON字符串转成java的Map对象详细步骤》:本文主要介绍如何将JSON字符串转换为Java对象的步骤,包括定义Element类、使用Jackson库解析JSON和添加依赖,文中通过代码介绍... 目录步骤 1: 定义 Element 类步骤 2: 使用 Jackson 库解析 jsON步骤 3: 添

Java中List转Map的几种具体实现方式和特点

《Java中List转Map的几种具体实现方式和特点》:本文主要介绍几种常用的List转Map的方式,包括使用for循环遍历、Java8StreamAPI、ApacheCommonsCollect... 目录前言1、使用for循环遍历:2、Java8 Stream API:3、Apache Commons

基于Redis有序集合实现滑动窗口限流的步骤

《基于Redis有序集合实现滑动窗口限流的步骤》滑动窗口算法是一种基于时间窗口的限流算法,通过动态地滑动窗口,可以动态调整限流的速率,Redis有序集合可以用来实现滑动窗口限流,本文介绍基于Redis... 滑动窗口算法是一种基于时间窗口的限流算法,它将时间划分为若干个固定大小的窗口,每个窗口内记录了该时间

【C++】_list常用方法解析及模拟实现

相信自己的力量,只要对自己始终保持信心,尽自己最大努力去完成任何事,就算事情最终结果是失败了,努力了也不留遗憾。💓💓💓 目录   ✨说在前面 🍋知识点一:什么是list? •🌰1.list的定义 •🌰2.list的基本特性 •🌰3.常用接口介绍 🍋知识点二:list常用接口 •🌰1.默认成员函数 🔥构造函数(⭐) 🔥析构函数 •🌰2.list对象

uva 11178 计算集合模板题

题意: 求三角形行三个角三等分点射线交出的内三角形坐标。 代码: #include <iostream>#include <cstdio>#include <cstdlib>#include <algorithm>#include <cstring>#include <cmath>#include <stack>#include <vector>#include <

poj 3050 dfs + set的妙用

题意: 给一个5x5的矩阵,求由多少个由连续6个元素组成的不一样的字符的个数。 解析: dfs + set去重搞定。 代码: #include <iostream>#include <cstdio>#include <set>#include <cstdlib>#include <algorithm>#include <cstring>#include <cm

Collection List Set Map的区别和联系

Collection List Set Map的区别和联系 这些都代表了Java中的集合,这里主要从其元素是否有序,是否可重复来进行区别记忆,以便恰当地使用,当然还存在同步方面的差异,见上一篇相关文章。 有序否 允许元素重复否 Collection 否 是 List 是 是 Set AbstractSet 否

论文翻译:ICLR-2024 PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS

PROVING TEST SET CONTAMINATION IN BLACK BOX LANGUAGE MODELS https://openreview.net/forum?id=KS8mIvetg2 验证测试集污染在黑盒语言模型中 文章目录 验证测试集污染在黑盒语言模型中摘要1 引言 摘要 大型语言模型是在大量互联网数据上训练的,这引发了人们的担忧和猜测,即它们可能已