4.4 数组的基本操作

数组的基本操作包括遍历数组、填充数组、排序数组等。对于遍历数组我们已经在前面介绍过,下面详细介绍填充数组与排序数组。

4.4.1 填充数组

数组中的元素定义完成后,可以通过Arrays类的fill()方法来对数组中的元素进行分配,起到填充替换的效果。fill()方法的语法格式如下:

     Arrays.fill(数组名,要填充的内容);

主要参数介绍如下:

· 数组名:已经定义好的数组。

· 填充内容:填充内容是给数组添加的,与数组具有相同的数据类型。

【例4.11】使用fill()方法填充数组,这里填充内容为一个*矩阵(源代码\ch04\4.11.txt)。

运行结果如图4-16所示。

图4-16 fill()方法运行结果

4.4.2 快速排序

通过Arrays类的sort()方法可以对数组中的元素快速排序,排序方式是根据其数组元素的自然顺序进行升序排列。

【例4.12】使用sort()方法排序数组(源代码\ch04\4.12.txt)。

运行结果如图4-17所示。这里使用数组类Arrays的sort()方法对数组的元素进行升序排列,然后使用for循环语句将数组元素按排列后的顺序显示出来。

图4-17 快速排序运行结果

4.4.3 冒泡排序

冒泡排序(Bubble Sort)是一种计算机科学领域较简单的排序算法。冒泡排序就是比较相邻的两个数据,小数放在前面,大数放在后面,这样排一次后,最小的数就被排在了第一位,第二次排序也是如此,如此类推,直到所有的数据排序完成。这样数组元素中值小的就像气泡一样从底部上升到顶部。

【例4.13】创建一维数组,使用冒泡排序方式将数组按从小到大的顺序输出(源代码\ch04\4.13.txt)。

运行结果如图4-18所示。这里声明并初始化了一个一维数组,通过for循环语句输出数组的元素。通过冒泡排序算法,对一维数组进行排序。

图4-18 冒泡排序运行结果

提示:使用冒泡排序时,首先比较数组中前两个元素即array[i]和array[j],借助中间变量temp,将值小的元素放在数组的前面即array[i]中,值大的元素放在数组的后边即array[j]中。最后将排序后的数组输出。

4.4.4 选择排序

选择排序(Selection Sort)是一种简单直观的排序算法。它的工作原理是每一次从待排序的数组元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据元素排完。选择排序是不稳定的排序方法。

【例4.14】创建一维数组,使用选择排序方式将数组按从小到大的顺序输出(源代码\ch04\4.14.txt)。

运行结果如图4-19所示。这里声明并初始化了一个一维数组,通过for循环语句输出数组的元素。通过选择排序算法,对一维数组进行排序。

图4-19 选择排序运行结果