轻松学Java之数组和字符串.pptx

上传人:max****ui 文档编号:20879195 上传时间:2021-04-20 格式:PPTX 页数:53 大小:1.60MB
收藏 版权申诉 举报 下载
轻松学Java之数组和字符串.pptx_第1页
第1页 / 共53页
轻松学Java之数组和字符串.pptx_第2页
第2页 / 共53页
轻松学Java之数组和字符串.pptx_第3页
第3页 / 共53页
资源描述:

《轻松学Java之数组和字符串.pptx》由会员分享,可在线阅读,更多相关《轻松学Java之数组和字符串.pptx(53页珍藏版)》请在装配图网上搜索。

1、第6章 数组和字符串本章介绍Java中预定义好的两个类:数组和字符串。它们是所有程序设计语言必须要处理的两类数据结构。Java将它们设计为对象,内置了丰富的方法,降低了开发人员的工作量,而且Java还对它们的用法进行了优化。例如,Java会对数组的下标进行检测,如果有下标越界的情况,就会及时报告,避免了给开发人员造成额外的工作量。 6.1 一维数组我们在程序设计时,常常会遇到要输入大量数据的情况。一个变量只能存储一个值,当程序中需要对大量的数据进行处理时,就可能要用到多个变量。数组的引入,大大方便了程序的设计,如图6.1所示。 6.1 一维数组一个数组可以存储多个值,在对多个内容进行处理时,数

2、组的名称均相同。那我们怎么去找到一个具体的元素并来使用它呢?只需要运用下标即可。我们用下标来表示数组元素的存放位置,它的使用方法如图6.2所示。 6.1.1 一维数组的声明若想存放一连串相关的数据,使用数组是一个相当好的选择。首先我们来对数组进行声明,数组声明的格式如图6.3所示。 6.1.1 一维数组的声明数组创建完成后,系统会对各个元素进行默认赋值。系统对各个基本类型的数组的默认初值如图6.4所示。 6.1.2 数组元素的表示方法想要使用数组里的元素,可以利用索引来完成。Java的数组索引编号从0开始,以一个score8的整型数组为例,score0代表第1个元素,score1代表第2个元素

3、,score7代表第8个元素,也就是最后一个元素。 6.1.3 一维数组的初始化数组必须在访问之前进行初始化,数组的初始化有两种方式。第一种方式是以字面形式指定数组的完整内容,格式如图6.8所示。使用字面值指定数组,元素值必须用逗号隔开,并全部放在花括号中。例如,以下代码对score数组进行赋值。赋值后,score0的值为15,score1的值为32, score4的值为27。 int score= 15,32,65,14,27; 6.1.3 一维数组的初始化第二种方式是指定数组的大小,再使用new关键字初始化所有数组元素,格式如图6.9所示。下面代码运用new关键字实现对数组元素的初始化。初

4、始化后,每个值均为0: int score = new int10; /定义并创建数组,长度为10 6.1.4 一维数组的赋值数组可以在初始化时就赋值,在上一小节我们已经涉及过了,在此不再赘述。下面我们为大家讲解数组先初始化,后赋值的情况。 6.1.5 数组的使用我们学习数组的目的就是为了能使用数组,下面我们为大家讲解几种常见的的数组使用方法。 1.数组的遍历遍历数组是对数组最为常见的操作。遍历数组就是按照某种规则,依次访问数组中的元素,如依次访问每个元素,间隔特定距离访问每个元素等。由于遍历数组的操作非常频繁,所以从JDK 1.5起,Java增加了一种新的循环结构:foreach循环。 2.

5、求数组中的最大、最小值我们在使用数组时,常常也会用到数组里的某些特殊值,其中最常用的就是最大最小值。 3.数组的排序我们在数组中存放的数据往往是杂乱无章的,当我们从数组里面取出数据时,我们希望它们能按照一个顺序排列出来。这就需要我们对数组中的元素进行排序。数组排序的方法有很多,其中最常用的方法就是运用Arrays.sort()方法对数组进行排序。 4.查找指定数组元素在实际应用中,我们也常常需要明确查找出指定数组元素的值。 6.1.6 Java为数组提供的一些常用方法 Java语言还为数组提供了一些专门的方法,运用这些方法我们可以很方便地对数组进行复制、填充、比较、排序和输出等操作。下面我们就

6、来按照方法的作用来简要介绍一些较为常用的方法。 1.数组的复制 Java标准类库提供了static方法 System.arraycopy(),用它复制数组比用for循环复制要方便得多。 System.arraycopy()方法包含了5个参数,它的使用方法如图6.18所示。 2.数组的填充对于数组的填充,Java提供了Arrays.Fill()方法来实现。运用Array.Fill()方法我们可以直接在数组中加入任意值。Arrays.Fill()方法的使用方式如图6.19所示。 3.比较两个数组是否相等对于比较两个数组是否相等,Java提供了专门的Arrays.equals()方法。通过这个方法我

7、们可以比较两个不同名称的数组中的数组元素是否相同,方法返回布尔型数值。 Arrays.equals()方法的使用方式如图6.21所示。 4.数组的遍历在上一小节中我们已经讲过数组的应用了,但是若想依次输出数组内容还要用到for循环语句等内容,其实Java中已经给出了一种直接遍历的方法Arrays.asList()方法。使用这种方法我们就可以直接输出数组中的全部内容。Arrays.asList()方法的使用方式如图6.23所示。 4.数组的遍历 Java中还提供了其他的一些方法,这些方法的用法和上面几种大致相同,我们在此就不再赘述了。图6.25给出了这些方法的方法说明和方法描述 6.2 多维数组

8、虽然用一维数组可以处理一般简单的数据,但是在实际应用中仍显不足,所以Java提供了二维数组以及多维数组供程序设计人员使用。我们学会了使用一维数组后,再来看看多维数组的使用方法。 6.2.1 二维数组的声明和初始化二维数组是最常见的多维数组,它由行和列组成。每行包含相同的列数。二维数组的初始化与一维的没有多大区别,只是变成了两个下标,两边需标明数组的行数和列数,二维数组的声明格式与初始化如图6.18所示。 6.2.2 二维数组的赋值二维数组可以直接在声明时就对数组赋初值,可以利用大括号来完成。只要在数组的声明格式后面再加上所赋初值即可,如图6.19的格式。 6.2.3 二维数组的使用二维数组元素

9、的输入与输出方式以及遍历、排序等操作使用方式与一维数组大致相同,我们在此不再赘述。在声明一个数组变量和创建一个二维数组对象以后,我们可以通过为数组中的元素赋值,来修改数组中任一元素的值。 6.2.3 二维数组的使用二维数组以及多维数组,也都可以运用foreach循环。只是foreach循环语句不能自动的处理二维数组的元素,它是按照行,也就是一维数组处理的。要访问二维数组的所有元素,需要使用两个嵌套的循环。具体使用方式如图6.22所示。 6.2.4 多维数组要想继续提高数组的维数,我们只要在声明数组的时候将数组下标再增加一组即可,所以三维数组的声明为int a,四维数组为int a,以此类推。它

10、们的用法都与二维数组用法相同,我们不再赘述。 6.3 字符串字符串是在程序开发中,随时随地都能用到的对象型数据,处理好字符串数据,对于程序开发来说,是至关重要的。在程序不同的角落都会存在字符串处理的身影。在本质上,字符串实际上为char型数组。字符串由Java.lang.String类来表示,该类具有一系列的属性和方法,提供对字符串的各种操作。除了String类,Java还提供了StringBuffer类用来处理可变长度的字符串。下面分别对其进行介绍。 6.3.1 String字符串的声明首先我们为大家讲一下String对象的声明,声明一个String类型的变量和声明普通变量相同,其一般格式如

11、图6.24所示。 6.3.2 创建字符串 Java中创建字符串主要有两种形式:一种是直接使用字符串常量创建字符串变量,另一种是使用new关键字创建字符串变量。具体形式如图6.25所示。 1.直接使用字符串常量创建字符串变量直接使用字符串常量创建字符串变量的形式是大家所熟悉的创建形式,如下所示: String str=”hello”;或者 String str; Str=”hello”; 2.使用new关键字创建字符串变量使用new关键字创建字符串变量,指的是使用String类的构造方法。String的构造方法有多种声明形式,主要如下: String str = new String(); /创

12、建一个空字符串 String str = new String( char a); /使用字符数组中的所有元素创建字符串 String str = new String( char a,offset,count); /使用字符数组中的一部分元素创建字符串,其中offset表示起始截取位置,count表示截取个数 String str= new String(original); /使用字符串常量创建字 符串 6.3.3 字符串连接字符串连接时程序中经常进行的操作,用来将多个字符串连接在一起形成一个字符串。字符串连接使用加法(+)运算符进行。 6.3.4 字符串的比较在实际编程中,经常需要对两个

13、字符串的内容进行比较。Java语言中的String类提供了几个方法分别适合不同情况的字符串比较,如表6.2所示。 方法名称方法功能compare To()按词典顺序比较字符串,返回int值equals()比较两个字符串的内容是否相等,返回boolean值equalsIgnoreCase()忽略大小写,比较两个字符串的内容是否相等,返回boolean值 1.String类下compareTo()方法按字典顺序比较两个字符串(compareTo),该比较基于字符串中各个字符的Unicode值。按字典顺序将此String对象表示的字符序列与参数字符串所表示的字符序列进行比较。具体比较方法如图6.28

14、所示。 2.对象的equals()方法字符串是否相等也是使用较频繁的一组操作。字符串对象调用String类中的equals方法,比较当前字符串对象是否与参数指定的字符串相同。为了在比较对象时比较对象的值,JDK中有许多类都提供了equals()方法。 3. equalsIgnoreCase()方法 equalsIgnoreCase()方法与equals()方法的作用与用法基本相同,只是equalsIgnoreCase()方法在运用时会忽略大小写。 6.3.5 字符串方法字符串String作为数组和类,本身提供了许多用法来进行各种复杂的操作。这些方法很多,我们这里只为大家讲授几种常用的方法。 1

15、length方法(获取字符串长度) length()方法是Java中的一种常用方法,它用来返回字符串的长度。其功能示例图如图6.32所示。 2indexof()方法 indexOf方法用于返回字符(串)在指定字符串中首次出现的索引位置。如果能找到,则返回索引值,否则返回-1。其功能示例图如图6.34所示。 3. substring()方法字符串对象调用String类的substring()方法可以对字符串进行取子字符串的操作。其功能示例图如图6.36所示。 4. replace()方法 String类中的一组replace()方法返回一个新的字符串,它是通过用新的字符串,替换此字符串中出现的所

16、有指定子字符串而得到的,原字符串并不会发生改变。其功能示例图如图6.38所示。 5. startsWith()方法和endsWith()方法使用String类中的startsWith()方法和endsWith()方法,可以判断某字符串是否以指定字符串开始或结果。其功能示例图如图6.40所示。 6. toLowerCase()方法与toUpperCase()方法 String类中提供了两个专门用于转换字符串大小写的方法:toLowerCase()方法与toUpperCase()方法。其功能示例图如图6.42所示。 6.3.6 StringBuffer类的声明和创建由于String对象中存放的字符

17、串是不能修改的,所以如果要求频繁增加、删除和修改字符串中的某些字符,那么用String就不是很方便。在这种情况下,可以使用StringBuffer类。创建StringBuffer对象,首先要进行声明,声明的一般形式如图6.44所示。 1.不带参数的构造方法 StringBuffer():该构造方法为对象提供可容纳16个字符的空间。以下代码就是利用new关键字创建的一个不带参数的构造方法: StringBuffer str=new StringBuffer(); 2.以整型数为参数的构造方法 StringBuffer(int length):该构造方法为对象提供length个字符位。以下代码就是

18、利用new关键字创建的一个以整型数为参数的构造方法,参数值为1024: StringBuffer str=new StringBuffer(1024); 3.以String对象作为参数的构造方法 StringBuffer(String str):该构造方法用str为对象进行初始化。以下代码就是利用new关键字创建的一个以String对象作为参数的构造方法,字符串值为“Hello”: StringBuffer str=new StringBuffer(“Hello”); 6.3.7 StringBuffer类的方法 StringBuffer类是动态的字符串类,它可以动态的执行添加、删除、插入等字

19、符串的编辑操作。该类的常用方法说明如下。 1.append()方法 append()方法用于向字符串中追加内容,这个方法有多种实现方式,它们可以接受任何类型的数据。其功能示例图如图6.45所示。 2. deleteCharAt()方法 deleteCharAt()方法的作用是删除指定位置的字符,然后将剩余的内容形成新的字符串。其功能示例如图6.47所示。 3.insert()方法 insert()方法的作用是在StringBuffer对象中插入内容,然后形成新的字符串。它和append()方法的区别就是insert()方法可以在任意特定的位置进行任意数据类型的值的插入。其功能示例如图6.49所示。 4. setCharAt()方法该方法的作用是修改对象中索引值为特定位置的字符为新的字符。其功能示例如图6.51所示。 6.4 小结在这一章中我们给大家介绍了一维数组、多维数组以及字符串。本章的重点在于一维数组和二维数组的使用,String和StringBuffer类的方法的使用。而本章难点则是多维数组的使用方法以及String类和StringBuffer类各种方法的掌握。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!