持续创作,加速成长!这是我参与「掘金日新计划 · 10 月更文挑战」的第5天,点击查看活动详情
数组:
概念:
数组是一种数据类型,是引用类型,其可以存放多个同一类型的数据。
数组的使用方式:
注:第一个中括号可以也可以写在数组名后面。 1. 动态初始化1:
数据类型 [] 数组名 = new 数据类型[大小];
2. 动态初始化2:
第一步:声明数组,此时数组是null(eg.double scores[] ;) ;
第二步:分配内存空间,让其可以存放数据(scores = new double[5];);
3. 静态初始化:
数据类型 []数组名 = {元素值, 元素值,……元素值};
数组的引用(索引/访问/获取数组元素):
数组[下标]
注意:数组的下标是从零开始的,第一个元素的下标为零。
如图所示:
注意细节:
- 数组里的数据类型应该相同,或者可以自动转换;
- 数组中的元素可以是任何数据类型,包括基本类型和引用类型,但是不能混用;
- 数组创建后,若没用赋值,其会有默认值(int 0;short 0; byte 0;long 0; float 0.0; double 0.0; char \u0000; boolean false; String null);
- 使用数组的步骤:1.声明数组并分配其内存空间;2.给各个元素赋值;
- 数组的下标必须在指定范围内,否则会报“数组下标越界的错误”;
- 数组属于引用类型,数组型数据是对象(此处暂不展开对对象的阐述)。
代码演示:
简单入门:
结果展示:
查找数组内部最大元素(难度稍有提高):
数组赋值机制:
希望小伙伴们理解的更加透彻,图示如下:
数组拷贝:
首先创建一个新数组(两者的长度应该是一样的),然后遍历数组一,赋给数组二,要求两个数据空间是独立的,故对数组二的改变,将不会影响到数组一。
数组反转:
将数组内的内容反过来,这里注意要先设置一个临时变量去保存一个要参与交换的元素。
代码演示:
方法一:
方法二:
数组的添加(扩充):
通过实现动态的给数组添加元素效果,实现对数组扩容。这里不给予代码演示,和数组拷贝方法二的类似,都是先创建一个新元素,不同之处是new一个新数组时,将其的长度设置为原长度加新添数组元素个数。