数组
定义:数组是相同数据元素的集合。数组本身是引用数据类型,即对象。 数组可以存储基本数据类型、存储引用数据类型。
数组的声明
数组的声明的两种方式:
数据类型 [ ] 数组名字 例如:int [] a;
数据类型 数组的名字 [] 例如: int a [];
数组的创建
数组创建的三种方式:
- 声明数组的同时,根据指定的长度分配内存,但数组中元素值都为默认的初始化值
例如: int[] ary0 = new int[10]; - 声明数组并分配内存,同时将其初始化
例如: int[] ary1 = new int[]{1, 2, 3, 4, 5}; - 与前一种方式相同,仅仅只是语法相对简略
例如: int[] ary2 = {1, 2, 3, 4, 5}; 从另一个角度,数组创建可以分为动态和静态两种 : 动态创建数组(没有为元素赋值,可以结合for循环进行赋值) char[] chAry = new char[10]; 静态创建数组,在创建的时候,即为每个元素赋初值 int[] ary1 = new int[]{1, 2, 3, 4, 5}; 数组的长度:length属性
数组的访问与迭代
数组元素的访问:数组名字[索引] 例如:a[0],a[1]; 注意:数组的索引从0开始, 索引的数据类型是整型 ,索引最大值和数组长度始终差1 数组的迭代的两种方式:
- for 循环
int [] b1 = new int []{1,2,3,4,5,6,7};
for(int i =0;i<b1.length;i++){
System.out.println(b1[i]);
}
- 增强for循环
int [] b1 = new int []{1,2,3,4,5,6,7};
for(int x:b1){ System.out.println(x); }
数组排序
冒泡排序 冒泡排序是比较基础的排序算法之一,其思想是相邻的元素两两比较,较大的数下沉,较小的数冒起来,这样一趟比较下来,最大(小)值就会排列在一端。整个过程如同气泡冒起,因此被称作冒泡排序。 冒泡排序的步骤:
- 比较相邻的元素。如果第一个比第二个大,就交换他们两个。
- 每趟从第一对相邻元素开始,对每一对相邻元素作同样的工作,直到最后一对。
- 针对所有的元素重复以上的步骤,除了已排序过的元素(每趟排序后的最后一个元素),直到没有任何一对数字需要比较。
选择排序 选择排序是一种简单直观的排序算法。它的工作原理是:第一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,然后再从剩余的未排序元素中寻找到最小(大)元素,继续放在起始位置知道未排序元素个数为0。 选择排序的步骤: 1.首先在未排序序列中找到最小(大)元素,存放到排序序列的起始位置。 2.再从剩余未排序元素中继续寻找最小(大)元素,然后放到未排序序列的起始位置。 3重复第二步,直到所有元素均排序完毕。
二维数组
二维数组的定义: 数组的数组—二维数组的每一个元素是一个一维数组 例如:
int [][]a = {{1,2,3},{1,2,3},{1,2,3}};
二维数组的声明:
int [][] a;
int a2[][];
二维数组的迭代:
int [][] b1 = new int [][]{{1,2},{3,4}};
for(int i =0;i<b1.length;i++){
for(int j =0;j<b1[i].length;j++){
System.out.print(b1[i][j]);
}
}
|