数组:(数组相当于容器,可以同时存储多个值,但是每个值的数据类型相同)
● 是一个对象
● 可以是原始数据类型(基本数据类型)或类类型(自己定义的类或者jdk定义的类。如:String,Scanner)
● 下标默认从0开始,而且访问时不可超出定义的上限,否则会产生下标越界错误
------------------------------------------------------------------------------------------------------------------
数组声明:(创建一个引用,通果这个引用的名字来引用数组)(数据类型 标识符[ ])
● int a[ ]: //声明一个数据类型为整型的数组a
● double[ ] b: //声明一个数据类型为浮点型的数组b
● student c[ ]: //声明一个数据类型为student类的数组c
注意:[ ]可以写在标识符之后也可以写在数据类型之后
------------------------------------------------------------------------------------------------------------------
数组的定义:
注:由于数组是一个对象,所以可以使用关键字new来创建一个数组
------------------------------------------------------------------------------------------------------------------
数组的引用:
注:数组的索引范围为0---length-1
------------------------------------------------------------------------------------------------------------------
数组的遍历:
(获取数组中的每个元素)
------------------------------------------------------------------------------------------------------------------
数组元素的填充、替换:
(通过Arrays类的静态方法fills类的静态方法fill()来对数组中的元素进行替换)
● fill(int[ ] a,int value):(数组名,数据类型的值)
● fill(int[ ]a,int fromIndex,int toIndex,int value):
(数组名,开始下标,结束下标,数据类型的值)
------------------------------------------------------------------------------------------------------------------
数组的排序:
● 通过Arrays类的静态方法实现对数组的排序:
● 冒泡排序:(把相邻两个元素进行比较,如满足一定条件则进行交换,每次循环都将最大(或最小)的元素排在最后,下一次循环是对数组中其他的元素进行类似操作)
注:在内循环中j<array.length-1-i可以减少循环次数
● 选择排序:(把满足条件的元素与指定的排序位置交换。与冒泡排序相比,交换次数要少,速度快一些)
● 反转排序(倒序):(对数组两边的元素进行交换,依次类推,直到数组将所有数组元素反转替换)
常规写法:
简便写法:
------------------------------------------------------------------------------------------------------------------
复制数组:
● Arrays类的copyOf(arr,int newlength):
(需要复制的数组名,新数组长度):
● Arrays类的
copyOfRange(arr,int formIndex,int toIndex):
(需要复制的数组名,开始下标,结束下标):
------------------------------------------------------------------------------------------------------------------
数组的默认初始值:
(数组是引用类型,它的元素相当于类的成员变量,因此数组一经分配空间,其中的每个元素也被按照成员变量同样的方式被隐式初始化)
------------------------------------------------------------------------------------------------------------------
多维数组:
(Java中多维数组被做为数组的数组处理)
● Java中多维数组的声明和初始化应按从高维到低维的顺序进行:
● java中多为数组不必须是规则矩形形式:
------------------------------------------------------------------------------------------------------------------
多维数组初始化:
------------------------------------------------------------------------------------------------------------------
多维数组遍历:
● 常规写法:
● 简便写法:
注:一般最多写到二维数组就不往后写了,二维数组以上会被绕晕,哪怕思路在清晰
------------------------------------------------------------------------------------------------------------------
自己整理,有些地方是扒拉的,如有侵犯,还望告知