预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

在线预览结束,喜欢就下载吧,查找使用更方便

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

2.1.什么是数组 首先明确,数组是一个很重要的内容,非常重要。 前面介绍的if结构、循环,解决的都是算法问题。那什么是算法?所谓算法就是流程,像取钱怎么取?插卡,输入密码,输入要取钱的金额,确定。那这个过程,第一步怎么做,第二步怎么做,判断还是循环,这就是算法。 Pascal之父NicklausWirth说过一句话并因此而得了图灵奖,这句很经典的话就是,程序即为:算法+数据结构,所谓数据结构,简单的说就是把数据按照特定的某种结构来保存,设计合理的数据结构是解决问题的前提条件。今天讲的数组,就是最基本的、用得最多的一种数据结构。试想下,存储一个学员的成绩,可以声明一个整型变量score来存储,声明20个学员的考试成绩呢?存储50个随机数呢?存储1万个帐号呢?声明太多的变量,显然很繁琐,并且不适合整体的操作。像这种情况,可以使用数组这种数据结构来解决。 数组为相同数据类型的元素组成的集合,数组元素按线性顺序排列,所谓线性顺序是指除第一个元素外,每一个元素都有唯一的前驱元素;除最后一个元素外,每一个元素都有唯一的后继元素(“一个跟一个”),可以通过元素所在位置的顺序号(下标)做标识访问每一个元素(下标从0开始,最大到元素个数-1),数组结构如下图-2所示: 图-2 从上图中可以看出,a[0]即代表第1个元素,a[1]代表第二个元素,假设数组有5个元素,则最后一个元素即为a[5-1]。 2.2.数组的定义 2.2.1.定义基本类型数组 声明数组的语法为:数据类型[]数组名=new数据类型[大小];示例代码如下: int[]arr=newint[10]; 上面的示例代码中,int[]为数组类型,表示数组中的每一个元素为int类型;数组也是在内存中用于存储数据的,并且是存储一组数据,同样需要一个对它的引用,该引用即为arr,arr称为数组类型变量(引用);new为特定的声明数组的关键字,后面会详细讲解,现在先记住。数组的声明必须要有元素个数,10即为数组中元素的个数,也称为数组长度。总结下来,定义基本类型数组的要点包括: 确切的数据类型:用于开辟空间大小 整体的数组名字:用于对数据的引用 不能缺少的“[]” 注意在定义数组时使用的new关键字,正是因为new语句,才使得数组分配到了指定大小的空间(后面详细讲解)。 声明数组的时候,int[]arr与intarr[]两种写法均可。常用方式为int[]arr。 声明数组时不规定数组长度(可以看到声明时仅指定了int[],未指定长度),new关键字分配空间时需指定分配的空间大小(newint[10])。 2.3.数组的初始化 2.3.1.初始化数组 基本类型(数据元素为基本类型)的数组创建后,默认为其数组元素设置了初始值,元素的初始值如下所示:byte、short、char、int、long为0;float和double为0.0;boolean为false。注意,此处强调的是基本类型数组的默认值,后期会介绍数据元素为非基本类型的,它的默认初始值与基本类型不同。 在程序中很多时候需要手动设置初始值,可以在数组声明的同时进行初始化,如下代码所示: int[]arr={10,23,30,-10,21}; 上面的代码中,元素的个数即为数组的长度。但是此种写法只能用于声明时的初始化,不能用于先声明后赋值的情况,例如,下面的代码会有编译错误: int[]arr; arr={10,23,30,-10,21}; 对于已声明的数组,可以通过下面的方式对数组类型变量进行初始化: int[]arr; arr=newint[]{10,23,30,-10,21}; 注意:new之后的[]中不可以写长度,而元素的个数就是数组的长度。 2.4.数组的访问 2.4.1.获取数组的长度 在程序中,调用数组的length属性可以获取数组的长度,如下代码所示: int[]arr=newint[]{3,6,8,9}; intlen=arr.length; System.out.println(“数组长度为:”+len); 上面的代码中,len即为数组的长度,输出结果为:“数组长度为:4”。 2.4.2.通过下标访问数组元素 若想访问数组中的元素,需要通过下标的方式,需要注意的是,数组的下标从0开始,最大到length-1,代码如下所示: int[]arr=newint[]{4,5,6,8}; inttemp=arr[2];//获取第3个元素,即为6 //交换数组下标为2和3的两个相邻元素的值,交互后的结果为:4,5,8,6 inttemp=arr[2]; arr[2]=arr[3]; arr[3]=temp; 2.4.3.遍历数组元素 在实际的应用中,常常需要对数组整体进行操作,最常见的方式即为遍历数组元素,通常可选择for循环语