一:数组概述
数组第具有相同数据类型的一组数据的集合,例如,球类的集合--足球、篮球、羽毛球等;器集合--电视机、洗衣机、电风扇等。在程序设计中,可以将这些集合称为数组。数组中的每个元素具有相同的数据类型。在 Java 中同样将数看作是一个对象,虽然基本数据类型不是对象由基本数据类型组成的数组则是对象。在程序设计中引入数组可以更有效地管理和处理数据。我们经常使用的数组包括一维数组和二维数组等。
二:一维数组
一维数组实质上是一组相同类型数据的线性集合,例如学校中学生们排列的一字长队就是一个数组,每一位学生都是数组中的一个元素。再比如快捷酒店,就相当于一个一维数组,每一个房间都是这个数组中的元素。当在程序中需要处理一组数据,或者传递一组数据时,就可以使用数组实现。
1:获取数组长度
数据类型[ ] 数组名 =new 数据类型 [数组长度]
Int[ ] a;
Int a[ ];
Int[ ] a =new int[5];
创建一个长度为20的char类型数组,名为ch
char[] ch=new char[20];
创建一个长度为3的double类型数组,名为d
double[] d=new double[3]
2:初始化一维数组
Int[ ] a=new int[]{1,2,3,4,5};
Int[] a;
a={1,2,3,4,5};
int[] a=new int[5]
a[0]=1;
a[1]=2;
a[2]=3;
a[3]=4;
a[4]=5;
使用length属性获取数组长度
运行结果
3: 使用一维数组
运行结果:
三:二维数组
1:使用二维数组
运行结果:
四:数组的基本操作
1、遍历数组
定义二维数组,实现将二维数组中的元素呈梯形输出。
结果:
2.填充和替换数组中元素
结果:
3: 对数组进行排序
结果:
4:复制数组
结果;
5: 查询数组
结果:
五:数组排序算法
冒泡排序
冒泡排序是最常用的数组排序算法之一,它以简洁的思想与实现方法备受青睐,是初学者最先接触的一个排序算法。使用冒泡排序时,排序数组元素的过程总是小数往前放,大数往后放,类似水中气泡往上升的动作,所以称作冒泡排序。
基本思想
冒泡排序的基本思想是对比相邻的元素值,如果满足条件就交换元素值,把较小的元素移动到
数组前面,把较大的元素移动到数组后面(也就是交换两个元素的位置),这样较小的元素就像气
泡一样从底部上升到顶部。
代码;
package 第五章;
public class SelectSort {
public static void main(String[] args) {
// TODO Auto-generated method stub
int[]array= {63,4,24,1,3,15};//创建一个数组
SelectSort sorter=new SelectSort();sorter.sort(array);//创建直接排序类的对象
}
public void sort(int[]array) {//
int index;
for(int i= 1;i<array.length;i++) {
index =0;
for(int j = 1;j<array.length -i;j++) {
if(array[j]>array[index]) {
index = j;
}
}
//交换在位置array.length-i和index(最大值)上的两个数
int temp=array [array.length -i];//把第一元素值保存到临时变量中
array[array.length-i]=array[index];把第二个值保存到第一个元素单元中
array[index]=temp;//把临时变量(第一个元素原值保存到第二个元素单元中)
}
showArray(array);//输出直接选择排序后的数组元素
}
public void showArray(int[]array) {
for(int i :array) {//遍历数组
System.out.print(">"+i);//输出每个数组元素值
}
System.out.println();
}
}