日常学习 7.31 数组的遍历

文章介绍了Java中数组的基本概念,包括数组的定义、属性、创建方式(静态与动态)、长度固定性以及数据类型一致性。同时,提到了常见的数组操作如获取元素、修改元素、数组越界异常以及数组在排序和统计等场景的应用。此外,还强调了数组遍历和循环的逻辑思维挑战。
摘要由CSDN通过智能技术生成

7.31

java数组

一、基本概念
#一组数据,使用有序的方式对数据进行储存的一种结构





二、数组中的名字与属性
#数组的元素
#数组的 索引/下标/角标 ,每个元素的 标识/门牌号
#数组可以根据下标获取元素, 数组名[下标]
#数组的长度,元素的个数,数组名.length

三、数组的特性
#长度是固定的,不可变
#所有的数据类型都能定义自己的数组
#同一个数组,数据类型必须一致

四、创建数组(一维)
#静态 创建/初始化
1.完整写法
数据类型[] 数组名(变量名) = new 数据类型[]{数据1,数据2,数据3,数据n};

2.简约写法
数据类型[] 数组名(变量名) = {数据1,数据2,数据3,数据n};




#动态创建/初始化
不给定数据,但要已知长度

写法
数据类型[] 数组名(变量名) = new 数据类型[长度];
未输入时,虚拟机会给默认值
int[] 与整数类型的数组 :0
double[] 浮点型 :0.0
char[]字符数组 :0/空字符
boolean[] 布尔数组 :false
String[] 引用数据类型数组 :null



五、数组(对象)的名字
如:[I@15db9742
@代表分隔符
左边的[I 表示对象是int一维数组类型 ([[I表示int二维数组类型)
右边的15db9742 是一个十六进制的内存地址
进制的基础常识:十进制,没有十 0~9 10
二进制,没有二 0,1 10
十六进制没有十六 0~9,a,b,c,d,e,f 10

六、数组一定会遇到的bug
ArrayIndexOutOfBoundsException
数组 下标 超出 边界 异常 = 数组越界

七、数组中的思想

1.累加的思想
在 遍历数组 外定义一个"和"
在 遍历数组 过程中进行累加
在 遍历数组 结束后得到“和”的结果



2.统计的思想
在 遍历数组 过程中,满足条件,计数一下
在 遍历数组 过程中,还可以判断当前计数器
在 遍历数组 结束后,展示计数结果

3.求最值的思想
在 遍历数组 外定义一个参照物 变量名
在 遍历数组 过程中和每一个元素比对,如果更大
就赋值给变量

八、数组的修改
1.元素的修改
数组名[下标] = 新值

2.地址的修改
int[] array = {1,2,3,4,5};
array = new int[3];


int[] arr = new int[5];
array = arr;


3.数组的拷贝
#浅拷贝
赋值内存地址(本质上还是同一个对象)


#深拷贝
将某个数组(对象)中每一个元素,一个一个的 赋值 给目标数组的对应位置
本质上为两个对象,互不影响
支线任务:
1.静态创建和动态创建分别适合什么场景

2.数组的选择排序和冒泡排序

1.

2.

心得:数组遍历和循环单个使用还好,一旦混合使用或者嵌套就很考验逻辑思维能力,一定要能理清关系,实在不行可以画流程图进行辅助。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值