JAVA数组
1. 定义及初始化
1. 1动态初始化(声明并开辟数组)
数组类型[] 数组名 = new 数据类型[数组长度]
其中,数据类型可以是8种基本的数据类型,也可以是引用数据类型。 注意:
-
在给数组命名的时候,一般在数组名后加一个 s 表示这是一个包含多个元素的数组(与单个变量区分)。
-
当数组采用动态初始化开辟空间之后,数组之中的每个元素都是该数据类型的默认值。
1.2 静态初始化和默认初始化
简化格式: 数据类型[] 数组名称 = {值, 值, …}; 完整格式(推荐): 数据类型[] 数组名称 = new 数据类型[]{值, 值, …};
注意: a. 通过数组下标索取来取得元素,下标默认从0开始。数组下标超出数组长度,数组越界异常(运行时异常)。 b. 数组属于引用数据类型,在使用之前一定要开辟空间(实例化),否则就会产生"NullPoninterException"。
int[] arrays = {1, 2, 3, 4, 5}; int[] arrays = new int[]{1, 2, 3, 4, 5};
数组的四个基本特点 1.其长度是确定的。数组一旦被创建,它的大小就是不可以改变的。
2.其元素必须是相同类型,不可以出现混合类型
3.数组中的元素可以是任何数据类型,包括基本类型和引用类型
4.数组变量属于引用类型,数组也可以看成是对象,数组中的每个元素相当于该对象的成员变量。数组本身就是对象,Java中对象是在堆中的,因此数据无论保存原始类型还是其他对象类型,数组对象本身是在堆中的。
数组的使用
1.For-Each循环 2.数组作方法入参 3.数组作返回值
多维数组
二维数组
int a[][] = new int[2][5]
Arrays 类
Arrays 是JDK提供的操作数组的工具类,array类提供了动态创建和访问 Java 数组的方法。 arrays此类包含用来操作数组(比如排序和搜索)的各种方法。此类还包含一个允许将数组作为列表来查看的静态工厂。主要有一下几种用法。
冒泡排序
冒泡排序算法的原理如下:
-
比较相邻的元素。如果第一个比第二个大,就交换他们两个。
-
对每一对相邻元素做同样的工作,从开始第一对到结尾的最后一对。在这一点,最后的元素应该会是最大的数。
-
针对所有的元素重复以上的步骤,除了最后一个。
-
持续每次对越来越少的元素重复上面的步骤,直到没有任何一对数字需要比较。