【Java学习】二维数组

一个数组变量里存的是哈希值(存的大小内容是固定的) ,它指向对应在堆区上的数组空间,当一个数组变量里存的哈希值指向的在堆上的数组空间里面的一个个引用元素存储的是一个个哈希值指向在堆区上的又一个个数组空间时,此时就形成了二维数组,最开始那个数组变量,里面存的哈希值指向的数组空间的元素是一个个数组变量的哈希值引用****,这个数组就是二维数组

二维数组的元素个数必须确定 ,即++存储多少个数组变量的引用++ ,即**++第一层数组的空间大小要确定的++** ,第二层数组空间大小多少、存不存在都是随意的 ,如果要设置为不存在,对应存储那个数组的引用里面存null哈希值 ,所以二维数组的行(数组引用变量元素个数)是要确定的,二维数组的列(数组引用变量元素指向的数组的大小)是可以不定随意的,可以形成不规则的二维数组

对引用变量的哈希值解引用时,可以得到引用对象的所有信息 ,但一次解一般都是++选择取块解里面我们需要的那一部分信息++

二维数组的数组变量类型是 int\[\]\[\]

  • int\[\]\[\] array = new int\[\]\[\]{{1,2,3},{4,5,6}}; 或 int array = {{1,2,3},{4,5,6}};
  • int\[\]\[\] array2 = new int23 ; 2行3列二维数组存2个引用元素,每个引用元素指向的数组对象都是存3个整型,现在里面默认存0
  • int\[\]\[\] array3 = new int2\[\] ; 二维数组开辟了两个引用变量大小的空间存两个引用变量,引用变量里存的值都是null,对应的引用变量还没有开辟空间创建对象,还没有创建第二层数组对象
相关推荐
行思理12 小时前
go语言学习难度及适合学习的人群
开发语言·学习·golang
wangchunyu11414 小时前
JAVA CompletableFuture异步编程实战
java·开发语言·python
paopaokaka_luck15 小时前
流浪动物救助与收养系统(DeepSeek AI对话、 ECharts多维分析、救助流程衔接、领养与回访衔接、 捐赠确认与公示、志愿者协作)
java·前端·javascript·人工智能·mysql·echarts·推荐算法
Thomas.Sir15 小时前
第9课:SpringBoot4.x Web开发基础:WebMvc自动配置、静态资源、请求参数接收
java·spring boot
程序 代码狂人15 小时前
切片表与分区表的区别(数据开发面试版)
java·大数据·开发语言·数据仓库·算法
2501_9445215916 小时前
Deepmerge 跨端三方库仓颉适配全流程
java·python·eclipse·github
楚山之石16 小时前
【Medical Image Analysis】深度学习医学图像合成综述:伪CT、合成MRI与合成PET的架构、性能与临床边界
图像处理·人工智能·学习·mr·mri
南归北隐17 小时前
Spring AI Alibaba Graph框架实现MCP数据库查询实战
java·后端·spring ai·mcp·spring ai mcp
古法老登瞎折腾17 小时前
大数据智能运维实战(九):让 AI 查日志——找到异常,也保留上下文
java·大数据·运维·人工智能·spring ai·mcp
Li_RuiQi17 小时前
DAgger方法演进_独立学习笔记
笔记·学习·计算机视觉