零基础吃透Java数组!批量存数据再也不用挨个定义变量✨
哈喽自学Java的小白宝子们👋接上篇函数干货,零基础第二大核心考点——数组来了!
有没有写代码写到崩溃的家人?
要存10个学生成绩、20个用户名,只能挨个定义变量,score1、score2、score3……变量写到手抽筋🤯
改数据要改几十处、遍历数据无从下手、代码杂乱难管理!
Java数组直接根治这个痛点!一个容器,收纳所有同类数据,批量存取、批量修改一键搞定,考试必考、开发必用、面试高频,全篇无代码,人话全拆解,看完直接满分通关✅
🔥人话通俗解读:数组到底是什么?
抛开官方晦涩定义,大白话一句话懂数组:
专属收纳盒!同一个盒子里,只能放一模一样类型的数据,还能统一管理、统一操作所有数据
✅不能混搭:装整数就只能放整数,不能混放文字、小数
✅统一管控:存数据、取数据、改数据,批量一键操作
✅省时省力:不用批量创建一堆零散变量
📌数组标准三步走使用流程(新手必背)
所有数组使用,逃不开:声明→分配空间→使用三步,固定流程不会错!
1、声明:给收纳盒起名、定品类
提前规定盒子存什么数据,给盒子取名,业内公认标准写法:数据类型[] 数组名
⚠️写法避雷:另外两种奇葩写法能运行,但开发禁止使用,考试认准标准写法即可
2、分配空间:规定盒子容量大小
声明完盒子,必须设定能放多少个数据,也就是数组长度,定好初始容量
3、实操使用:存取核心规则(必考重点)
盒子里每一个空位,都有专属编号,这个编号就是下标
💥核心铁律:下标永远从0开始!
下标范围:0 ~ 数组总长度-1
✅存数据:找准编号,把数据放进对应空位
✅取数据:找准编号,调取空位里的数据
⚠️全网最高频报错:数组下标越界
只要访问超出下标范围的编号,代码能编译、一运行直接崩盘报错,新手90%bug都出自这里!
✅数组遍历:挨个查看盒子所有数据,借助循环一键访问全部元素,不用逐个调取
✅获取容量:自带专属属性,一键查看数组一共能存多少数据
💡懒人知识点:数组自带默认值,不用手动赋值
只要开辟好数组空间,系统自动给所有空位填充初始值,零基础直接背表格即可👇
1、整数类型:默认0
2、小数类型:默认0.0
3、布尔类型:默认false
5、文字/对象类型:默认null(空值)
📝四种数组定义方式,分清对错不踩坑
方式1:拆分定义(先起名、后定容量)
方式2:一步定义+分配空间
方式3:标准静态初始化
❌禁忌:括号内绝对不能手动写长度,写了直接报错
懒人快捷写法,硬性红线:声明和赋值必须写在同一行!分开写直接报错,千万别踩坑
⚙️重难点理解:数组底层内存逻辑
1、数组所有存储空间,在内存里是紧紧挨在一起、连续排布的
3、下标从零设计:纯为了提升电脑调取数据的寻址速度,算法优化设计
✅基本数据变量赋值:传递真实数值,改一个互不影响
Java数组定长不可逆!一旦建好盒子,容量不能直接变大,扩容只能换盒子,固定三步走思路超好记:
2、把旧盒子里所有数据,完整搬到新盒子
三种扩容实操方式(开发分级使用)
2、系统自带拷贝方法:精准拷贝指定数量数据,自由度高
看源码、调用系统API高频遇见,不用手写,但必须看得懂!
2、核心本质:可变参数底层就是数组,程序会自动转为数组使用
✅一个方法里最多只能设置一个可变参数
4、作用:适配任意数量同类数据,大幅提升代码灵活度
🔥面试重中之重:数组三大排序方式
1、冒泡排序
2、选择排序
3、工具快捷排序
人话理解:数组里面套数组,相当于表格,有行、有列
通过行编号+列编号精准取值,行、列下标全部从零开始
获取总行数、单独获取每一行的列数,自带默认值,和一维数组默认值完全一致
可分步创建、可直接赋值初始化,规则和一维数组一致,禁止行列混搭赋值
每一行存放的数据个数不一样,行数必须提前定义,列数可以后续单独自定义,禁止只定义列、不定义行
💥数组全篇小白速记考点
2、下标越界:访问编号超出范围,必运行报错
4、数组名存内存地址,数组互赋值属于地址传递
6、可变参数本质数组,位置必须放形参末尾
Java零基础全套干货持续连载✨,函数+数组两大基础通关,下期更新数组高频易错题型,点赞收藏不迷路!
更多推荐

所有评论(0)