• 集合概念知识点


    栈:
    1、栈是运行在:内存当中,如果当前内存被清除掉后,我当前的数据,无法继续使用,也就随之清除。
    2、栈的运行模式:先进后出,后进先出。栈就相当于弹夹。第一颗进去的子弹,永远最后才会发射出来。
    3、在什么地方使用:
    1、如果说我需要用电梯系统。
    2、垃圾回收管理系统。所有的垃圾车,都运行进入了当前的垃圾站。我先到的,是不是在最里面。
    3、注意,如果系统没有设置两个连接口。那么就会出现栈运行模式。

    队列:
    1、队列的运行模式:先进先出,后进后出。与栈的运行模式,相反。
    2、队列与栈的区别:
    1、在添加内容过程:还需要将内容进行压栈么?
    2、在内容排序过程中,优先进去的顺序出来优先。
    3、日常生活中:排队,挂号,等等。


    数组:
    1、数组的运行模式:当我创建数组后,当前数组在内存中开辟一个足够容量的数组对象。
    2、数组的增删慢:
    1、如果是直接增加,那么会比较快,因为我不需要管理其他的内存对象。
    2、如果在指定角标进行添加,那么就涉及到其他内容也会连带的进行改变。
    3、如果我需要指定内容进行删除,也是同理,删除当前角标的元素后,其他数据与角标也要发生改变。
    3、数组为什么查询快:
    数组在进行查询过程,我直接可以获取到当前数组的角标就能查询到数据内容。精准获取到角标对象后,直接按照角标内容获取,无需进行遍历。


    链表:
    1、增删快,查询慢:

    增删:通过外部进行直接增加对象内容与地址值,通过链接方式,进行增加,无需动用后面的内容与对象联动修改。

    查询:链表不像数组,可以通过角标定位,链表需要查询,那么必须找到头。通过第一个内容找到第二个内容,通过第二个内容继续寻找第三个内容。以此类推。

    集合:
    List:
    ArrayList:数组
    LinkedList:链表

    Set:
    TreeSet:
    为什么TreeSet集合没有角标。Set集合里面存储的就相当于HashMap的键,然后他不能存储重复元素。
    如果存储重复元素,那么当前使用的是覆盖操作。将相同元素的两个对象,覆盖为一个对象。
    Set集合:不能通过角标进行获取对象。如果想要进行获取对象,那么必须通过迭代的方法进行单个获取。

    Map:
    HashMap:hash表。
    通过Key可以获取到Value对象。那么我们现在可以吧Key当成一个对象名。

    Map集合获取对象:通过键获取Value。
    删除对象:通过Key,删除value。
    如果删除想通过value进行删除,那么就需要将Hashmap转换为其他集合进行删除。

    注意:
    1、Map集合中,不能一个键对应多个值。
    2、Map集合中,可以多个键,对应一个值。
    3、如果必须要使用Map集合一个键,对应多个值。我们可以使用集合的嵌套模式进行,将value类型,设置成List集合,那么List集合里面是否有多个内容,就是List集合说了算

  • 相关阅读:
    mysql 无法连接提示 Authentication plugin 'caching_sha2_password' cannot be loaded
    探究分析:快速对大量的数据转换为数组
    SQL Server like 字段
    InfluxDB从原理到实战
    Python学习日记(四十) Mysql数据库篇 八
    MySQL数据库基本操作
    ES入门宝典(详细截图版)
    NameNode && Secondary NameNode工作机制
    MySQL 两张表关联更新(用一个表的数据更新另一个表的数据)
    mysql单个表拆分成多个表
  • 原文地址:https://www.cnblogs.com/yuhudashen/p/7919375.html
Copyright © 2020-2023  润新知