《数组与字符串》PPT课件.ppt





《《数组与字符串》PPT课件.ppt》由会员分享,可在线阅读,更多相关《《数组与字符串》PPT课件.ppt(81页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社第4章 数组与字符串学习目标 本章要点上机练习 习 题电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社学习目标 数组与字符串是Java语言中非常重要且功能强大的对象,其作用渗透到程序设计的各个方面,是读者继续深入学习必不可少的基本知识。本章主要介绍了数组的概念,以及数组函数和向量类,讲解了数组和向量类的使用,还介绍了字符串String类和StringBuffer类,通过示例详细讲解了字符串的常用方法。让读者熟练掌握数组和字符串的特点与使用方法。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社本章要点 一维数组和
2、多维数组的概念数组的声明、创建和初始化数组函数的使用String类和StringBuffer类字符串字符串的常用方法电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数 组数组作为一种符合数据类型广泛应用于数据运算和图形程序设计中。一维数组与多维数组 数组函数的使用 向量类 应用举例数组与向量类的使用 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组与多维数组数组有一维和多维两种形式,下面将详细介绍两种数组的使用方法。一维数组的声明 一维数组的创建 数组的初始化 多维数组 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的声明数组是具有相同类型
3、的元素按照顺序组成的一种复合数据类型。通过一个整数下标,可以访问其中的每一个值,下标从0开始排序,如果一个数组的长度为4,那么各元素序号为0、1、2和3。但是在Java中定义数组时候,不允许直接指定数组的大小。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的声明根据这个定义,可以得出数组的特点:数组的所有元素是同一类型,各个元素是有顺序的,每个元素通过数组名和数组下标来表示。一维数组的声明格式为:Type arrayName;或者 type arrayName;电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的声明其中,type为该数组的数据类型,可以
4、声明任何类型的数组简单类型或类类型。ArrayName为数组名。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的声明上述这种将方括号置于变量名之后可以声明数组的格式,是用于C、C+和Java编程语言的标准格式。有些观点认为这种格式会使声明的格式复杂难懂,因而,Java编程语言允许一种替代的格式,该格式中的方括号位于变量名的左边。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的声明这样的结果可以认为类型部分在左,而变量名在右,上述两种格式并存,可以选择任何一种作为习惯的方式。当数组声明的方括号在左边时,该方括号可应用于所有位于其右的变量。电脑基础实例上
5、机系列丛书Java程序设计教程 清华大学出版社一维数组的创建 Java中所有数据类型都在定义时自动为其分配内存空间,但数组必须在声明后再经过创建数组这一步骤才能使用。创建数组是指在声明数组之后为数组分配内存空间,同时对数组元素进行初始化。创建数组有两种方式:电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的创建1)使用关键字new创建数组使用关键字new来为一个已经声明的数组分配实际的内存空间。其格式如下:arrayName=new typearraySize;这里,arraySize是指明数组的实际长度。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组
6、的创建char array1=new char 20;这条语句相当于以下两条语句char array1;array1=new char 20;而对于类类型数组的创建要多理解电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的创建2)直接指定初始值的方式创建数组除使用关键字new创建数组以外,还可以以赋值的形式创建数组。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社一维数组的创建其格式如下:int I=1,2,3,4,5;这条语句定义了一个包含5个元素的整型数组,同时又指定了元素的初始值,并为其创建了5个元素的存储区。电脑基础实例上机系列丛书Java程序设计教程
7、清华大学出版社一维数组的创建【例4-1】一维数组的声明和创建(光盘:源文件第4章例4-1.txt)。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数组的初始化 数组初始化是保证系统安全的基础,变量绝不能在未初始化的状态下使用。当创建一个数组时,即为数组分配了内存空间,每个元素都被初始化,数值类型的数组元素被自动初始化为0,布尔类型的数组元素被自动初始化为false,引用类型的数组元素被自动初始化为null。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数组的初始化对数组的初始化也可以在定义数组的同时进行。另一方面,数组元素的范围也是非常重要的,用来指示单个数组元素的
8、下标必须总是从0开始,且保持在合法范围之内大于或等于0,且小于数组长度。任何访问在上述界限之外的数组元素的行为都会引起运行时出错。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数组的初始化【例4-2】用冒泡排序法将数组中的元素按从小到大的顺序排列(光盘:源文件第4章例4-2.txt)。冒泡排序法将数组中两个相邻的元素进行比较,并总是将小的元素交换到前面。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社例4-2运行结果电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组 Java并不直接支持多维数组,所以多维数组的声明是通过对一维数组的嵌套来完成的,即使
9、用“数组的数组”的方式来声明多维数组。这里我们首先来看二维数组。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组1)二维数组一个二维数组的声明格式为:type arrayName ;其中,type可以是最低一维数组的类型,arrayName是数组名,最右边的方括号代表最低一维。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组与一维数组一样,多维数组对数组元素没有分配任何的空间,在声明后,必须使用关键字new来为其分配内存空间,然后才能访问里面的元素。多维数组有以下方法来分配空间。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组直接分配
10、每一维的空间。必须从最高维开始,由高到低,分别为每一维分配内存空间。2)多维数组Java采用“数组的数组”声明多维数组,使处理多维数组更灵活。多维数组可以不是矩形电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组显然,这种多维数组是“不整齐”的,所以在声明和创建多维数组时候,不一定要指定每一维的元素个数。上述数组yanghui的高维各元素由于包含不同个数的低维元素,所以右边的方括号中实际无法确定某个数值。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组因此,在多维数组的声明和创建时候,数组最前面的一维或多维必须指定元素的个数,后面的方括号中可以不指定元素个
11、数。以下写法是允许的:int arrayDim=new int3电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组但以下语句是错误的:int arrayDim=new int3int arrayDim=new int2int arrayDim=new int电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社多维数组【例4-3】二维数组的使用矩阵相乘(光盘:源文件第4章例4-3.txt)。矩阵A(m,n)和B(n,1)相乘得到矩阵C(m,1),矩阵C的每个元素为Cij=aik*bkj(i=1,2,.,m,j=1,2.,n)电脑基础实例上机系列丛书Java程序设计教程
12、清华大学出版社例4-3运行结果电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数组函数的使用 在系统中很多关于数组的函数可以直接调用,下面将介绍几种常用的数组函数。数组复制System.arraycopy()数组排序Arrays.sort()电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数组复制System.arraycopy()Java语言在System类中提供了一种特殊的方法复制数组,该方法被称作arraycopy()。数组复制的基本格式为:public static void arraycopy(Object src,int srcPos,Object dest
13、,int destPos,int length)电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数组复制System.arraycopy()【例4-4】数组的复制,将数组a1的前4个元素赋给数组b1(光盘:源文件第4章例4-4.txt)。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社数组排序Arrays.sort()ArraysSort()将数组中的元素按从小到大的顺序排列,结果仍然放在源数组中。【例4-5】将数组a1按升序排列,并显示排序结果(光盘:源文件第4章例4-5.txt)。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社类“test4_5”运行结
14、果电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社向量类 向量类Vector是Java.util包提供的一个工具类,它是允许不同类型元素共存的变长数组,具有比数组更强大的功能。每个向量类的对象都可以表达一个完整的数据系列,同时,向量类还封装了许多有用的方法来操作和处理这些数据。向量类对象所表达的序列元素的个数是可变的,可以使用向量类实现变长数组。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社向量类向量类可为工作的各种元素类型的动态数组提供方法,如类继承关系。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社向量类向量类的构造函数 向量类的变量 向量类的基本方
15、法 电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社向量类的构造函数向量类有如下3种构造函数。public Vector():构造一个空向量。public Vector(int initialCapacity):构造一个具有存储容量的空向量。public Vector(int initialCapacity,int capacityInctrment):构造具有存储容量和增加量的空向量。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社向量类的变量向量类包含如下3种变量。protected int capacityIncrement:增加量,如为0,则每次需要增加时,缓冲
16、区的大小成倍。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社向量类的变量protected int elementCount:缓冲区中元素的数量。rotected Object elementData:元素被贮存的缓冲区。电脑基础实例上机系列丛书Java程序设计教程 清华大学出版社向量类的基本方法 下面是向量类中的一些方法,可以参照Java API查看该方法的描述。public final int size():返回向量中元素的数量。public final boolean contains(Object elem):如果指定对象是收集的值,返回真。电脑基础实例上机系列丛书Jav
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数组与字符串 数组 字符串 PPT 课件

限制150内