• JAVA整理学习实例(三)数组和其内存结构


    JAVA整理学习实例(三)数组和其内存结构

    注:文章基于一维数组。另外,老铁们可以先了解下什么是逻辑结构和存储结构。只有站得高才能看远,所以多了解一些,多知道一些,就更容易融会贯通。

    前言

           数组是很基础且很重要的数据结构之一;对于很多老铁来说,数组应该是一个很清晰的概念了;但是后面想写一些关于集合的东西,所想把数组单独拿出来说一下。

    简介:什么是数组?


    数组是一种数据结构,用来存储同一类型数据的集合,是为一组数据,简称数组。

    1.在Java中,数组对象是一个引用数据类型,所以在创建数组的时候,对象是在堆内存中。

    2.Java的数组,可以存储基本数据类型的数据,也可以存储引用数据类型(对象的引用)的数据。

    3.数组在内存中创建的时候,是一个长度固定,内存地址连续的内存数据块(这里不知道如何形容)。

    4.Java中,数组都是用“数组中的首元素在内存中的地址”作为整个数组对象的内存地址。

    5.数组中所有元素都有下标,下标从0开始,加1递增。

    数组的排序


    冒泡排序、插入排序、选择排序、快速排序、归并排序等。

    数组的扩容


    在Java中,数组在创建时,确定好数组的长度以后,就无法再改变。

    1.如果需要在运行时增加长度;那就只能新建一个更大的数组,将数据全部copy过去。

    2.同样的减少一个数组的长度,也是如此操作。

    数组的应用


    1.HashMapHashTable 数组+链表(红黑树)

    2.ArrayListVector

    唠叨

    看技术类的文章,有些知识要点不要尝试去记住它。而是仔细阅读文档,尝试去理解它;多思考,一个东西为什么会出现,又经历了如何的变化,才会演化成现在的样子。当你能思考完,并且理解后,很多问题自然而然就能联系到一起去。面试被问到的时候就不会担心问的问题被扩展开。

    写博客翻资料的时候,看到别人的写东西,都觉得自己好辣鸡,写的都没劲了。

    不过写东西的时候,确实对巩固知识和学习记忆有很大帮助,建议大家都写博客。

  • 相关阅读:
    SIT1145AQ收发器芯片CAN FD Passive功能详解(摘自官网)
    Python青少年等级考试实操题(二级)
    使用DaemonSet定制AKS工作节点
    【软件测试】测试用例写作规范
    Rust unix domain socket
    【C++】内联函数讲解和关键字inline纯干货简介
    docker虚拟网桥和业务网段冲突处理
    52、基于函数式方式开发 Spring WebFlux 应用
    Python黑科技揭秘:多窗口操作不再是难题,这些技巧让你轻松搞定
    中国毫米波雷达产业分析1——毫米波雷达行业概述
  • 原文地址:https://blog.csdn.net/u013100581/article/details/134254588