数组:
容器概念 容器主要就是把需要操作的多个数据提前存储起来
当后面需要的时候再从容器当中取出即可。
数组是一种容器 用来存储数据
数组当中的元素在数组中都有对应的位置-----索引(下标)
存储数据的时候,不能是混合类型,只能存储同一种数据类型的数据
数组容器它有规定的大小,数组容器一旦被数据创建出来只能存储它指定数量的数据
数组容器一旦规定了数量大小,那么里面必须存储数据的,而且必须存满
构建一个数量为10的数组,我就可以让该数组当中存储10个数组
假如你有九个数据,第十个位置必须给他值,哪怕是一个没有意义的值
对于数组来说,取的时候,只要没有超过数组的长度大小,程序都是允许的
长度大小是固定的
动态扩容: 如果需要存储的数据超出了该数组的长度,使用动态扩容,
首先先获取原来数组的长度,然后构建一个(原来数的长度的大小+超过的个数)的数组
之后依次取出原来对应位置上的数组元素存储到新数组当中,之后把新元素存储到新数组的末尾位置
再之后把已经储存好的新数组赋值给原数组变量,就完成了动态扩容
使用:1
创建数组的两种方式:动态创建,静态创建 1.1 动态创建 数组元素数据类型[] 数组名称 =new 数组元素数据类型[长度]
创建一个int类型的数组int[] arr = new int[3];
如果你定义的是int整形 存储的元素值为0
double 0.0
char 空格boolean null
1.2 静态创建语法格式: 数组元素数据类型[] 数组名称 = {元素值1,元素值2,元素值3......}
如果你填写了5个元素值,那么该数组的长度为5
如果你填写了7个元素值,那么该数组的长度为7
1.3 静态和动态结合 new 数组元素数据类型[]{元素值1,元素值2,元素值3..} 省略数组名称创建数组
2 存储(修改)和取出元素操作
语法格式: 数组名称[索引下标值]
备注:1索引下标值只能是整形,不能是浮点型 2索引下标取值范围:[0,数组名称.length-1] 0对应第一个位置 1对应第二个位置
3 计算
3.1 计算数组容器当中元素的最大值
实现思路: 依次从数组当中取出元素和当前的最大值进行比较大
值留下经过n次比较之后,得出当前数组当中的最大值
3.2计算数组当中元素的最小值实现思路:类似于求最大值
3.3 计算数组当中元素的总和值 累加值 3.4 计算数组当中元素的平均值 总和值÷数组元素的个数4 数组的增删改查 crud开发工程师c----增加元素c creat
r----检索/查找r retrieve
u----修改元素u update
d----删除元素 d delete
定义数组格式
数组元素的数据类型[] 数组名称 = new 数组元素数据类型[长度];
自定义的数组其实是Java当中的引用类型Array的衍生品
从中获取了一个length类型
数组它也是一种引用数据类型int[] double[] String[]
数组当中存储的元素的类型也可以是引用数据类型
动态创建
数组元素的数据类型[] 数组名称 = new 数组元素类型[];
静态创建
数组元素的数据类型[] 数组名称 = {元素值1,元素值2,......}
静态创建方式 必须在一行语句上完成, 不能拆分两行语句来完成
数组赋值
数组工具类Arrays
常用功能:sort(array)对当前传入的数组进行升序排序binarySearch(array,value)查找指定元素value在指定数组array
当中储存位置(下标值)----前提条件是有序的
该功能有一个结果值,是一个int类型值,需要有一个变量去接收toString(array) 对当前数组转换成一个字符串类型的值,
这个值的内容就是数组当中的每一个元素值
该功能也有一个结果值,是一个String类型值,需要有一个变量去接收
使用功能:
语法格式: Arrays.功能名称();//如果()里面有信息,
就传入想要的信息值,如果没有,就不传入