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


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

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

    前言

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

    简介:什么是数组?


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

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

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

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

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

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

    数组的排序


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

    数组的扩容


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

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

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

    数组的应用


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

    2.ArrayListVector

    唠叨

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

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

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

  • 相关阅读:
    TiFlash 常见问题
    R语言dist函数计算dataframe数据中两两样本之间的距离返回样本间距离矩阵,通过method参数指定距离计算的方法、例如欧几里得距离
    R语言中做VIF分析的问题探索
    网站设计师:Nicepage 4.15 Crack By Xacker
    LVS负载均衡群集--NAT
    GaussDB数据库SQL系列-行列转换
    分享从零开始学习网络设备配置--任务2.6 避免网络环路
    【Python3】【力扣题】338. 比特位计数
    AI应用新时代的起点,亚马逊云科技加速大模型应用
    C++ 数字图像处理之FAST 角点检测
  • 原文地址:https://blog.csdn.net/u013100581/article/details/134254588