第4章数组字符串和向量ppt课件.ppt

第4章数组字符串和向量ppt课件.ppt

ID:59492152

大小:271.50 KB

页数:44页

时间:2020-09-13

第4章数组字符串和向量ppt课件.ppt_第1页
第4章数组字符串和向量ppt课件.ppt_第2页
第4章数组字符串和向量ppt课件.ppt_第3页
第4章数组字符串和向量ppt课件.ppt_第4页
第4章数组字符串和向量ppt课件.ppt_第5页
资源描述:

《第4章数组字符串和向量ppt课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第4章 数组、字符串和向量数组、字符串和向量2主要内容4.1数组4.2字符串4.3向量数组、字符串和向量34.1数组数组是有序数据的集合,是由数目固定、相同类型的元素组成的,用一个统一的数组名和下标来唯一地确定数组中的元素。Java将数组作为对象来处理,数组是一种引用类型,从java.lang.Object继承而来,故Object类中的所有方法均可用。数组、字符串和向量44.1.1一维数组具有一个下标的数组称为一维数组。1.一维数组的声明其声明格式如下:这里只有数组变量的定义,没有为数组元素分配空间,只为数组的引用分配了空间,

2、array1和array2目前为空的引用。方式一:数据类型数组名[];方式二:数据类型[]数组名;例如:intarray1[];double[]array2;数组、字符串和向量54.1.1一维数组注意:(1)格式二中,在数组标志[]后出现的所有变量都将是数组变量。Java中,经常采用第二种格式声明数组。(2)在数组的声明中不指定数组的长度。数组、字符串和向量62.一维数组的初始化一维数组定义之后,必须经过初始化才可以引用,数组经过初始化后,其长度(即可存放的元素个数)就不可再改变。数组的初始化分为静态初始化和动态初始化两种:数

3、组、字符串和向量72.一维数组的初始化(1)静态初始化:在定义数组的同时对数组元素进行初始。int[]intArray={1,2,3,4};//定义了一个含有4个元素的int型数组注意:①在给数组赋初值时,不能同时指定数组的大小,Java会根据初值的多少自动计算数组的大小。②静态初始化必须使用上述一条语句完成③当创建数组后,如果没有初始化,系统会根据数组的不同数据类型,指定不同的缺省值。继承性和多态性82.一维数组的初始化(2)动态初始化:用运算符new为数组分配空间①对于简单类型的数组,其格式如下:数据类型数组名[]=new

4、数据类型[arraySize];数据类型[]数组名=new数据类型[arraySize];其中arraySize表示数组长度,通常为整型常量,用以指明数组元素的个数。或先声明数组,再对数组进行初始化:数据类型[]数组名;数组名=new数据类型[arraySize];继承性和多态性9②对于复合(引用)类型(类、接口、数组)的数组,需要经过以下两步进行内存空间的分配。首先:为数组分配空间,每一个数组元素都是一个引用,格式为:数组名[]=new数据类型[arraySize];然后为每一个数组元素分配所引用的对象空间,格式为:数组名[

5、i]=new数组元素对象的构造函数;例如:StringstringArray[];//定义一个String类型的数组stringArray=newString[3];上述语句给数组stringArray分配3个引用空间,初始化每个引用值为nullstringArray[0]=newString("how");stringArray[1]=newString("are");stringArray[2]=newString(“you”);(如图示)数组、字符串和向量10数组stringArray的空间分配数组、字符串和向量113.

6、一维数组元素的的引用当数组初始化后就可通过数组名与下标来引用数组中的每一个元素。一维数组元素的引用格式如下:数组名[int类型的表达式]注意:(1)与C/C++不同的是,Java对数组元素的下标要进行越界检查,以保证访问的安全性。若数组下标越界,Java会抛出java.lang.ArrayIndexOutOfBoundsException异常。(2)length是属于数组对象的数据域而不是方法。因此,使用length()会出错,length只有在数组创建后才能访问。创建前,数组的引用是null。(3)与C、C++中不同,Jav

7、a对数组元素要进行越界检查以保证安全性。继承性和多态性124.数组的复制一个简单的赋值语句并不能完成数组复制工作,在Java中,可以使用赋值语句复制基本类型的变量却不能复制对象,如数组。将一个对象赋值给另一个对象,只会使两个对象指向相同的内存地址。赋值数组有以下三种方法:(1)用循环语句复制数组的每一个元素,如for(inti=0;i

8、])sourceArray.clone();(3)使用System类中的静态方法arraycopy,arraycopy的语法如下:arraycopy(sourceArray,srcpos,targetArray,tarpos,length);【例4.1】编程实现两个数组间相互

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。