配套课件-Java面向对象程序设计案例教程.ppt

上传人(卖家):三亚风情 文档编号:3224690 上传时间:2022-08-07 格式:PPT 页数:338 大小:8.53MB
下载 相关 举报
配套课件-Java面向对象程序设计案例教程.ppt_第1页
第1页 / 共338页
配套课件-Java面向对象程序设计案例教程.ppt_第2页
第2页 / 共338页
配套课件-Java面向对象程序设计案例教程.ppt_第3页
第3页 / 共338页
配套课件-Java面向对象程序设计案例教程.ppt_第4页
第4页 / 共338页
配套课件-Java面向对象程序设计案例教程.ppt_第5页
第5页 / 共338页
点击查看更多>>
资源描述

1、第一章 Java程序设计语言概述本章目标 Java简介简介 Java开发环境的搭建开发环境的搭建 简单简单Java程序的实现程序的实现 Eclipse集成开发工具集成开发工具21.1 Java简介3 Java语言之父-James Gosling JAVA是SUN公司于上世纪90年代开发的。1.1.11.1.1 JavaJava语言的发展历史语言的发展历史nJAVA最初为用于家用电器而开发。1990年12月,SUN公司的一个开发小组从事家用电器方面的小型研究项目。最初的方案是用C+开发。开发人员James Gosling对C+实现这一任务感到失望,决定自己编写了一种更好的语言来实现这一项目。最初

2、,这种语言命名为OAK(橡树)。1.1 Java简介41.1.11.1.1 JavaJava语言的发展历史语言的发展历史 1995年8月,Netscape公司的浏览器率先支持JAVA。随后,Microsoft的Internet Explorer浏览器也支持JAVA。这样,随着万维网的日益普及,JAVA得到了广泛的使用。1996年,Java编译器的第一版发布并发放许可。1997年,SUN推出Java1.1(JDK1.0),国际标准化组织批准Java规范。1998年,SUN推出Java2(JDK1.2)。2002年,SUN推出JDK1.4。2004年底,JDK1.5发布,后改名为Java SE 5

3、.0 2006年,发布Java SE 6.01.1 Java简介51.1.21.1.2 JavaJava语言的特点语言的特点 面向对象 语法简单 平台无关性 安全性 分布式应用 多线程1.1 Java简介61.1.31.1.3 JavaJava的三大开发体系的三大开发体系1.2 Java开发环境的搭建71.2.11.2.1 安装安装JDKJDK JDK(Java开发工具包)是Sun公司提供的Java开发环境和运行环境,是所有Java应用程序的基础。JDK包括一组API和JRE,这些API是构建Java应用程序的基础,而JRE是运行Java应用程序的基础。JDK包括J2ME(微型版)、J2SE(

4、标准版)和J2EE(企业版)3个版本,最基本的开发包是J2SE。1.2 Java开发环境的搭建1.2.11.2.1 安装安装JDKJDK安装过程参见教材 P41.2 Java开发环境的搭建91.2.21.2.2 配置系统环境变量配置系统环境变量 Java源程序进行编译和执行时,需要知道JDK中编译器和解释器所在的磁盘物理位置,以及程序所用到的类库所在的位置。开发人员可以通过配置系统环境变量的方式,为Java类库提供查找搜索路径(CLASSPATH),为编译器和解释器提供查找搜索路径(Path)等信息。1.2 Java开发环境的搭建101.2.21.2.2 配置系统环境变量配置系统环境变量配置过

5、程参见教材 P71.3 简单Java程序的实现111.3.11.3.1 向控制台输入和输出数据向控制台输入和输出数据 向控制台输入数据 可以使用标准输入串System.in通过控制台向程序中输入数据 向控制台输出数据 用System.out.println()或System.out.print()可以向控制台输出串值、表达式的值,二者的区别是前者输出数据后换行,后者不换行。1.3 简单Java程序的实现121.3.21.3.2 利用记事本编写利用记事本编写JavaJava程序程序 例题:编写Java应用程序,在计算机屏幕上输出一行文本信息:“欢迎访问Java世界”。完成过程及步骤参见教材P11

6、 1.4 Eclipse集成开发工具131.4.11.4.1 EclipseEclipse的下载与安装的下载与安装 Eclipse 是一个开放源代码的、基于Java的可扩展集成开发平台。Eclipse本身只是一个框架和一组服务,用于通过插件组件构建开发环境。只要有合适的组件,Eclipse不但能够支持开发Java应用程序,而且也能够支持其他的开发语言。由于Eclipse附带了一个包括Java开发工具(JDT)的标准插件集,因此,只要安装了Eclipse和JDK,就可以使用Eclipse开发Java应用程序。1.4 Eclipse集成开发工具141.4.11.4.1 EclipseEclipse

7、的下载与安装的下载与安装安装过程参见教材 P121.4 Eclipse集成开发工具151.4.21.4.2 EclipseEclipse的基本使用的基本使用Java项目创建过程参见教材 P15总结 Java语言的发展历史语言的发展历史 Java语言的特点语言的特点 Java开发环境的搭建开发环境的搭建 简单简单Java程序的实现程序的实现 Eclipse的下载与安装的下载与安装16谢谢!17第二章 Java程序设计语法基础本章目标 Java语言的组成语言的组成 基本数据类型基本数据类型 变量和常量变量和常量 运算符和表达式运算符和表达式 流程控制语句流程控制语句192.1 Java语言的组成语

8、言的组成2.1.12.1.1 标识符标识符 标识符就是用于Java程序中常量、变量、类、方法等命名的符号。使用标识符时,需要遵守以下几条规则:(1)标识符可以由字母,数字,下划线(_),美元($)组成,但是不能以数字开头;(2)标识符不能是Java关键字和保留字;(3)标识符严格区分大小写,所以number和Number是两个不同的标识符;(4)标识符的命名最好能反应出其作用,做到见名知意。2.1 Java语言的组成语言的组成2.1.22.1.2 关键字关键字 Java语言中有一些具有特殊用途的词被称为关键字,不能当做一般的标识符使用。Java关键字均用小写字母表示。abstractBoole

9、anbreakbytecasecatchcharclasscontinuedefaultdodoubleelseextendsfalsefinalfinallyfloatforifimplementsimportinstanceof intinterfacelongnativenewnullpackageprivateprotectedpublicreturnshortstaticsuperswitchsynchronized thisthrowthrowstransienttruetryvoidvolatilewhile2.1 Java语言的组成语言的组成2.1.32.1.3 注释注释 单行

10、注释符/单行注释是最常用的注释,通常用于注释可以显示在一行内的文本,注释内容从/开始到本行结尾。多行注释符/*/多行注释以“/*”为开始,以“*/”为结束,中间内容为注释的内容。该注释符既可以用于多行注释,也可以用于单行注释。文档注释符/*/文档注释以“/*”开头以“*/”结尾,注释中包含一些说明性的文字及一些JavaDoc标签,后期可以用来自动生成文档。2.2 基本数据类型基本数据类型2.2 基本数据类型基本数据类型2.2.12.2.1 整形数据整形数据类型类型存储需求存储需求取值范围取值范围byte1字节-2727-1short2字节-215215-1int4字节-231231-1long

11、8字节-263263-1 整型数据表示没有小数部分的数值,可以用十进制、八进制和十六进制表示,一般情况下使用十进制表示,并且它允许是负数。2.2 基本数据类型基本数据类型2.2.22.2.2 浮点型数据浮点型数据类型类型存储需求存储需求取值范围取值范围float1字节-2727-1double2字节-215215-1 浮点型数据表示有小数部分的数值。在Java中有两种浮点类型,float表示单精度,double表示双精度。2.2 基本数据类型基本数据类型2.2.32.2.3 字符型数据字符型数据 Java语言中,char用来表示单个字符,字符型数据必须用单引号括起来,例如a、A等。2.2.42

12、.2.4 布尔型数据布尔型数据 布尔类型(boolean)包括两个值,false(假)和true(真),常用于程序的比较和流程控制。2.2 基本数据类型基本数据类型2.2.52.2.5 数据类型的转换数据类型的转换 自动类型转换 单行数据类型可以由低字节向高字节进行自动转换,不会损失数据精度。强制类型转换 当高字节数据转换为低字节数据时,就需要用到强制类型转换,转换后可能导致数据丢失精度。语法:(数据类型)变量名 例如:double a=15.5;int b=(int)a;System.out.println(a);System.out.println(b);byte-short-int-lo

13、ng-float-doublebyte-short-int-long-float-double2.3 变量和常量变量和常量2.3.12.3.1 变量变量 变量是Java程序中的基本存储单元,是内存中的一块空间,能够存放数据和信息。它的定义包括变量名、变量类型、作用域几个部分。变量名可以由字母、数字、下划线(_)、美元($)组成,但是不能以数字开头。变量的命名一般有以下习惯:(1)驼峰法,第一个单词首字母小写,其后单词首字母大写,如myName;(2)尽量简短且清楚,见名知意。如stuName“学生姓名”;(3)长度没有限制,但区分大小写。如 price和Price是两个不同的变量;2.3 变量

14、和常量变量和常量2.3.12.3.1 变量变量 变量的初始化 Java语言规定,变量在使用前必须先声明,包括声明变量的类型、名称,还可以为其赋初值。声明变量的语法如下:类型 变量名=初始值例如:int i;char a=A;2.3 变量和常量变量和常量2.3.22.3.2 常量常量 常量是指在程序上始终保持不变的量。也就是说,一旦被赋值,就不能再更改了。习惯上,常量名使用大写字母,用关键字final修饰。声明常量的格式如下:final 数据类型 常量名=值例如:final double PI=3.1415;final String COURSE=“Java”2.4 运算符和表达式运算符和表达式

15、2.4.12.4.1 算数运算符算数运算符 算术运算符主要用于进行基本的算术运算,如加法、减法、乘法、除法等。算术运算符名称举例+加15+7=22-减、取反15-7=8*乘15*7=105/除15/7=2%取余15%7=1+自增1int i=7;i+-自减1int i=7;i-2.4 运算符和表达式运算符和表达式2.4.22.4.2 关系运算符关系运算符 关系运算符也称为比较运算符,用于判断两个数据的大小。比较结果是一个布尔值(true或false)。关系运算符名 称举 例结 果大于a=7;b=5;ab;true小于a=7;b=5;a=大于等于a=7;a=5;true=小于等于a=7;b=5;

16、a=b;false=等于a=7;b=5;a=b;false!=不等于a=7;b=5;a!=b;true2.4 运算符和表达式运算符和表达式2.4.3 2.4.3 逻辑运算符逻辑运算符 逻辑运算符主要用于进行逻辑运算。逻辑运算符名 称举 例结 果&或&与a&b或a&b如果a与b都为true,则返回true|或|或a|b或a|b如果a与b任一为true,则返回true!非!a如果a为false,则返回true,即取反异或ab如果a与b有且只有一个为true,则返回true2.4 运算符和表达式运算符和表达式2.4.42.4.4 赋值运算符赋值运算符 赋值运算符是指为变量或常量指定数值的符号。比如说

17、可以使用“=”将右边的表达式结果赋值给左边的操作数。赋值运算符名 称举 例=赋值a=7是把7赋值给a+=加等于a+=b等价于a=a+b-=减等于a-=b等价于a=a-b*=乘等于a*=b等价于a=a*b/=除等于a/=b等价于a=a/b%=模等于a%=b等价于a=a%b2.4 运算符和表达式运算符和表达式2.4.52.4.5 位运算符位运算符 位运算符主要用于二进制位的运算,并且按位运算。位运算符名称描述举例&按位与如果相对应位都是1,则结果为1,否则为0(A&B)=0000 0100,即4|按位或如果相对应位都是0,则结果为0,否则为1(A|B)=0000 1101,即13按位异或如果相对应

18、位值相同,则结果为0,否则为1(AB)=0000 1001,即9按位取反按位取反运算符翻转操作数的每一位,即0变成1,1变成0。(A)=1111 0011,即-13位左移运算按位左移运算符。左操作数按位左移右操作数指定的位数。(A位右移运算按位右移运算符。左操作数按位右移右操作数指定的位数。(A2)=0000 0011,即3不带符号的右移运算按位右移补零操作符。左操作数的值按右操作数指定的位数右移,移动得到的空位以零填充。(A1)=0000 0110,即62.4 运算符和表达式运算符和表达式2.4.62.4.6 条件运算符条件运算符 条件运算符(?:)也称为三元运算符,它的语法格式如下:布尔表

19、达式?表达式1:表达式2 运算过程:如果布尔表达式的值为true,则返回“表达式1”的值;如果值为false,则返回表达式2的值。2.4 运算符和表达式运算符和表达式2.4.72.4.7 运算符的优先级运算符的优先级优先级运算符结合性1().从左到右2!+(正)(负)+-从右到左3*/%从左到右4+(加)(减)从左到右5 从左到右6 =instanceof从左到右7=!=从左到右8&从左到右9从左到右10|从左到右11&从左到右12|从左到右13?:从右到左14=+=-=*=/=%=&=|=从右到左2.5 流程控制语句流程控制语句 Java语言同其他编程语言一样,程序的执行结构默认是按照顺序结

20、构自上而下逐条执行的。必要时,可以通过流程控制语句改变这种执行次序。Java中的控制语句有以下几类:选择结构:if、if-else、switch 循环结构:while、do-while、for 跳转语句:break、continue 2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 if语句 语法:执行过程:2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 if语句 案例:注意:如果 if 条件成立时的执行语句只有一条,可以省略大括号。但如果执行语句有多条,那么大括号就是不可或缺的。2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结

21、构 if-else语句 语法:执行过程:2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 if-else语句 案例:判断变量age的值,如果大于18,则提示成年,否则提示未成年。2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 多重if语句 语法:执行过程:2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 多重if语句 案例:假设年龄大于 60 岁,则提示“老年”;如果年龄介于 40 岁至 60 岁之间,则提示“中年”;如果年龄介于 18 岁至 40 岁之间,则提示“少年”;18 岁以下则提示“童年”。2.5 流程控制语句流程控

22、制语句2.5.12.5.1 选择结构选择结构 嵌套if语句 语法:执行过程:2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 嵌套if语句 案例:预赛成绩大于 80 分的可进入决赛,然后根据性别再划分为男子组决赛和女子组决赛。2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 switch语句 语法:执行过程:2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 switch语句 案例:根据考试的名次,给予前根据考试的名次,给予前 4 名不同的奖品。第一名,奖励笔记本一台;名不同的奖品。第一名,奖励笔记本一台;第二名,奖励第二名,奖励

23、 IPAD 2 一个;第三名,奖励移动电源一个;最后一名奖励一个;第三名,奖励移动电源一个;最后一名奖励 U 盘一个盘一个。2.5 流程控制语句流程控制语句2.5.12.5.1 选择结构选择结构 switch语句 注意:1.switch后面小括号中表达式的值必须是整型或字符型;2.case后面的值可以是常量数值,如1,2;也可以是字符型,如“男”“女”,但不能是变量或带有变量的表达式,如a*23.case匹配后,执行匹配快里的程序代码,如果没有遇见break,则会执行下一个case块的内容,直到遇到break或者switch语句块结束。2.5 流程控制语句流程控制语句2.5.22.5.2 循环

24、结构循环结构 while语句 语法:执行过程:第1步,判断while后面的条件是否成立,如果成立,执行第2步,否则执行第3步。第2步,执行循环体,再执行第1步。第3步,结束while语句的执行。2.5 流程控制语句流程控制语句2.5.22.5.2 循环结构循环结构 while语句 案例:特点:先判断,后执行先判断,后执行2.5 流程控制语句流程控制语句2.5.22.5.2 循环结构循环结构 do-while语句 语法:执行过程:第1步,先执行一遍循环操作,然后判断循环条件是否成立。第2步,如果条件成立,则重复执行第1、2步,直到循环条件不成立为止。2.5 流程控制语句流程控制语句2.5.22.

25、5.2 循环结构循环结构 do-while语句 案例:特点:先执行,后判断先执行,后判断2.5 流程控制语句流程控制语句2.5.22.5.2 循环结构循环结构 for语句 语法:执行过程:第1步,执行循环变量初始化部分,设置循环的初始状态,此部分在整个循环中只执行一次。第2步,进行循环条件的判断,如果条件为true,则执行循环体内代码;如果为 false,则直接退出循环。第3步,执行循环变量变化部分,改变循环变量的值,以便进行下一次条件判断。第4步,依次重新执行第2、3、4步,直到退出循环。2.5 流程控制语句流程控制语句2.5.22.5.2 循环结构循环结构 for语句 案例:特点:相比相比

26、while和和do-while语句结构更加简洁易读语句结构更加简洁易读2.5 流程控制语句流程控制语句2.5.22.5.2 循环结构循环结构 for语句 注意:for语句执行时,首先执行初始化操作,然后判断终止条件是否满足,如果满足,则执行循环体中的语句,最后执行迭代部分。完成一次循环后,重新判断终止条件。初始化、终止以及迭代部分都可以为空语句(但分号不能省),三者均为空的时候,相当于一个无限循环。在初始化部分和迭代部分可以使用逗号语句,来进行多个操作。逗号语句是用逗号分隔的语句序列。如果循环变量在for中定义,变量的作用范围仅限于循环体内2.5 流程控制语句流程控制语句2.5.22.5.2

27、循环结构循环结构 循环嵌套语句 循环体重包含循环语句的结构称为多重循环。最常见的就是二重循环。三种循环语句可以自身嵌套,也可以相互嵌套。在二重循环中,外层循环每执行一次,内层循环要执行一圈。2.5 流程控制语句流程控制语句2.5.22.5.2 循环结构循环结构 循环嵌套语句 案例:打印如下图形:2.5 流程控制语句流程控制语句2.5.22.5.2 循环结构循环结构 循环嵌套语句 代码参考:2.5 流程控制语句流程控制语句2.5.32.5.3 跳转语句跳转语句 break语句 breakbreak语句用于结束它所在的语句用于结束它所在的switchswitch语句,使程序语句,使程序跳到跳到sw

28、itchswitch语句结构后的第一个语句去执行。语句结构后的第一个语句去执行。breakbreak语语句的另一个作用是用于循环语句结构中,用来句的另一个作用是用于循环语句结构中,用来结束它所结束它所在的循环在的循环,使程序,使程序跳到循环结构后边的语句跳到循环结构后边的语句去执行。去执行。2.5 流程控制语句流程控制语句2.5.32.5.3 跳转语句跳转语句 break语句 案例:循环将 1 到 10 之间的整数相加,如果累加值大于 20,则跳出循环,并输出当前的累加值。2.5 流程控制语句流程控制语句2.5.32.5.3 跳转语句跳转语句 continue语句 continuecontin

29、ue语句只能用于循环结构中,用来语句只能用于循环结构中,用来结束本轮结束本轮循环循环(即跳过循环体中即跳过循环体中continuecontinue下面尚未执行的语句下面尚未执行的语句),直接直接进入下一轮次的循环进入下一轮次的循环。2.5 流程控制语句流程控制语句2.5.32.5.3 跳转语句跳转语句 continue语句 案例:求 1 到 10 之间的所有偶数的和。总结 Java语言的组成语言的组成 基本数据类型基本数据类型 变量和常量变量和常量 运算符和表达式运算符和表达式 流程控制语句流程控制语句64谢谢!65第三章 数组与字符串本章目标 一维数组一维数组 二维数组二维数组 数组的应用数

30、组的应用 字符串的应用字符串的应用673.1 一维数组一维数组3.1.13.1.1 一维数组的声明一维数组的声明 一维数组的声明格式有两种,分别是:数据类型 数组名;数据类型 数组名;例如:int scores;/定义存储分数的数组,类型为整型 double height;/定义存储身高的数组,类型为浮点型 String names;/定义存储姓名的数组,类型为字符串。3.1 一维数组一维数组3.1.23.1.2 一维数组的创建一维数组的创建 初始化方法:使用关键字new为数组分配存储空间 格式如下:类型标识符 数组名=new 类型标识符数组长度;类型标识符 数组名=new 类型标识符数组长度

31、;例如:int scores=new int5;String names=new String3;3.1 一维数组一维数组3.1.23.1.2 一维数组的创建一维数组的创建 初始化方法:通常也可以采用如下方式为数组元素赋初值并由初值的个数确定数组的大小:int array =1,2,3,4,5;String hobbys =music,sports,game;3.1 一维数组一维数组3.1.33.1.3 一维数组的访问一维数组的访问 访问格式:在对数组元素创建后,就可以通过数组的下标来访问数组元素,格式为:数组名下标 可以对赋值后的数组元素进行操作和处理,如获取并输出数组中元素的值:int s

32、cores=95,93,80,86,79 System.out.print(scores数组中第1个元素的值:+scores0);注意注意:数组下标从0开始。3.1 一维数组一维数组3.1.33.1.3 一维数组的访问一维数组的访问 循环打印输出数组中的数字:3.2 二维数组二维数组3.2.13.2.1 二维数组的声明二维数组的声明 二维数组的声明和一维数组基本相同,只是多一对。二维数组的声明格式有三种,分别是:数据类型 数组名;数据类型 数组名;数据类型 数组名;例如:int array1;double array2;char array3;3.2 二维数组二维数组3.2.23.2.2 二维

33、数组的创建二维数组的创建 分配空间 二维数组的创建格式为:数据类型 数组名;数组名=new 数据类型行的个数列的个数;或者:数据类型 数组名=new 数据类型行的个数列的个数;例如:int number=new int23;/定义一个2行3列的二维数组numberchar array=new char35 /定义一个3行5列的二维数组array 3.2 二维数组二维数组3.2.23.2.2 二维数组的创建二维数组的创建 赋值 二维数组的赋值,和一维数组类似,可以通过下标来逐个赋值,索引从0开始。格式如下:数组名行的索引列的索引=值;例如:int number=new int23;number0

34、0=11;number01=32;number02=15;3.2 二维数组二维数组3.2.23.2.2 二维数组的创建二维数组的创建 赋值 也可以在声明数组的同时直接赋值。格式如下:数值类型 数组名=值1,值2,值11,值22,值21,值22;例如:int number=1,2,3,4,5,6;3.2 二维数组二维数组3.2.33.2.3 二维数组的访问二维数组的访问 在循环输出时,需要用二重循环来输出二维数组中的每一个元素。例如:定义一个三行两列的数组,并循环打印输出数组中的每一个元素。3.3 数组的应用数组的应用【例例3-43-4】获取数组的最大值和最小值。获取数组的最大值和最小值。pub

35、lic class Test public static void main(String args)int arr=12,45,28,62,39;int max=getMax(arr);System.out.println(最大值为:+max);int min=getMin(arr);System.out.println(最小值为:+min);3.3 数组的应用数组的应用【例例3-43-4】获取数组的最大值和最小值。获取数组的最大值和最小值。/获取数组的最大值public static int getMax(int a)int max=a0;for(int i=0;i max)max=ai;

36、return max;3.3 数组的应用数组的应用【例例3-43-4】获取数组的最大值和最小值。获取数组的最大值和最小值。/获取数组的最小值public static int getMin(int a)int min=a0;for(int i=0;i a.length;i+)if(ai Ai),则交换它们,其结果是将最(大)小的元素交换到待排序序列的第一个位置,我们称它为一趟冒泡。下一趟冒泡时,前一趟确定的最(大)小元素不再参与比较,待排序序列减少一个元素,每趟冒泡的结果把序列中最(大)小的元素放到了序列的”最前面”。3.3 数组的应用数组的应用【例例3-53-5】实现冒泡排序算法实现冒泡排序

37、算法public class Test public static void main(String args)int arr=6,4,8,2,9;System.out.print(冒泡排序前 :);printArray(arr);/打印数组元素bubbleSort(arr);/调用排序方法System.out.print(冒泡排序后 :);printArray(arr);/打印数组元素3.3 数组的应用数组的应用【例例3-53-5】实现冒泡排序算法实现冒泡排序算法/定义打印数组方法public static void printArray(int arr)/循环遍历数组的元素for(int

38、i=0;i arr.length;i+)System.out.print(arri+);/打印元素和空格System.out.print(n);3.3 数组的应用数组的应用【例例3-53-5】实现冒泡排序算法实现冒泡排序算法/定义对数组排序的方法public static void bubbleSort(int arr)/定义外层循环for(int i=0;i arr.length-1;i+)/定义内层循环for(int j=0;j arr.length-i-1;j+)/比较相邻元素if(arrj arrj+1)3.3 数组的应用数组的应用【例例3-53-5】实现冒泡排序算法实现冒泡排序算法

39、/下面的三行代码用于交换两个元素int temp=arrj;arrj=arrj+1;arrj+1=temp;System.out.print(第+(i+1)+轮排序后:);printArray(arr);/每轮比较结束打印数组元素3.3 数组的应用数组的应用 程序运行结果如图所示。【例例3-53-5】实现冒泡排序算法实现冒泡排序算法3.4 字符串的应用字符串的应用3.4.13.4.1 StringString类类 构造字符串对象String类提供了如下一些常用的构造函数来构造字符串对象。(1)String()构造一个空的字符串对象。(2)String(char chars ):以字符数组cha

40、rs的内容构造一个字符串对象。(3)String(char chars,int startIndex,int numChars)以字符数组chars中从startIndex位置开始的numChars个字符构造一个字符串对象。(4)String(byte bytes):以字节数组bytes的内容构造一个字符串对象。(5)String(byte bytes,int offset,int length):以字节数组bytes中从offset位置开始的length个字节构造一个字符串对象。3.4 字符串的应用字符串的应用3.4.13.4.1 StringString类类 String类对象的常用方法S

41、tring类也提供了众多的方法用于操作字符串,以下列出一些常用的方法。(1)public int length():返回字符串的字符个数。(2)public char charAt(int index):返回字符串中index位置上的字符,其中index值的范围是0length-1。(3)public int indexOf(char ch)返回字符ch在字符串中第一次出现的位置。(4)public lastIndexOf(char ch)返回字符ch在字符串中最后一次出现的位置。(5)public int indexOf(String str)返回子串str在字符串中第一次出现的位置。(6)

42、public int lastIndexOf(String str)返回子串str在字符串中最后一次出现的位置。3.4 字符串的应用字符串的应用3.4.13.4.1 StringString类类 String类对象的常用方法(7)public String substring(int beginIndex):返回字符串中从beginIndex位置开始的子串。(8)public String substring(int beginIndex,int endIndex):返回字符串中从beginIndex位置开始到endIndex位置(不包括该位置)结束的子串。(9)public String c

43、ontact(String str):将当前字符串与给定字符串str连接起来。(10)public String replace(char oldChar,char newChar):把串中所有由oldChar指定的字符替换成由newChar指定的字符以生成新串。(11)public String toLowerCase():把串中所有的字符变成小写且返回新串。(12)public String toUpperCase():把串中所有的字符变成大写且返回新串。(13)public String trim():去掉串中前导空格和拖尾空格且返回新串。3.4 字符串的应用字符串的应用3.4.13.4

44、.1 StringString类类 String类的使用 详见书62页例题3-6。3.4 字符串的应用字符串的应用3.4.13.4.1 StringBufferStringBuffer类类 创建StringBuffer类对象StringBuffer类常用的构造方法如下。(1)StringBuffer():用于创建一个空的StringBuffer类对象。(2)StringBuffer(int length):以length指定的长度创建StringBuffer类对象。(3)StringBuffer(String str):用指定的字符串初始化创建StringBuffer类对象。3.4 字符串的应

45、用字符串的应用3.4.13.4.1 StringBufferStringBuffer类类 StringBuffer类对象的常用方法1)插入字符串方法insert()insert()方法是一个重载方法,用于在字符串缓冲区中指定的位置插入给定的字符串。它有如下形式。(1)insert(int index,类型 参量名):可以在字符串缓冲区中index指定的位置处插入各种数据类型的数据(如int、double、boolean、char、float、long、String、Object等)。(2)insert(int index,char str,int offset,int len):可以在字符串缓

46、冲区中index指定的位置处插入字符数组中从下标offset处开始的len个字符。3.4 字符串的应用字符串的应用3.4.13.4.1 StringBufferStringBuffer类类 StringBuffer类对象的常用方法2)删除字符串方法StringBuffer类提供了如下常用的删除字符串方法。(1)delete(int start,int end):用于删除字符串缓冲区中从start位置开始到end-1位置结束的子串。(2)deleteCharAt(int index):用于删除字符串缓冲区中index位置处的字符。3)添加字符串方法append()(1)append(数据类型 参

47、量名):可以向字符串缓冲区添加各种数据类型的数据(如int、double、boolean、char、float、long、String、Object等)。3.4 字符串的应用字符串的应用3.4.13.4.1 StringBufferStringBuffer类类 StringBuffer类对象的常用方法(2)append(char str,int offset,int len):将字符数组str中从offset指定的下标位置开始的len个字符添加到字符串缓冲区中。4)替换字符串方法 replace()replace()方法用于将一个新的字符串去替换字符串缓冲区中指定的字符。它的形式如下。repl

48、ace(int start,int end,String str):用字符串str替换字符串缓冲区中从start位置开始到end-1位置结束的子串5)获取字符方法StringBuffer提供了如下从字符串缓冲区中获取字符的方法。(1)charAt(int index):取字符串缓冲区中由index指定位置处的字符。3.4 字符串的应用字符串的应用3.4.13.4.1 StringBufferStringBuffer类类 StringBuffer类对象的常用方法(2)getChars(int start,int end,char dst,int dstStart):取字符串缓冲区中从start位

49、置开始到end-1位置结束的子串,并复制到字符数组dst中以下标dstStart开始的位置。6)其他几个常用方法(1)toString():将字符串缓冲区中的字符转换为字符串。(2)length():返回字符串缓冲区中字符的个数。(3)reverse():将字符串缓冲区中的字符串翻转。(4)substring(int start):取子串,返回字符串缓冲区中从start位置开始的所有字符。(5)substring(int start,int end):取子串,返回字符串缓冲区中从start位置开始到end-1位置结束所有字符。总结 一维数组一维数组 二维数组二维数组 数组的应用数组的应用 字符

50、串的应用字符串的应用97谢谢!98第四章 类和对象本章目标 面向对象的基本概念面向对象的基本概念 类的定义类的定义 对象的创建对象的创建 修饰符的使用修饰符的使用 基础类的使用基础类的使用1004.1 面向对象的基本概念面向对象的基本概念4.1.14.1.1 程序设计语言的发展程序设计语言的发展 面向机器的低级程序设计语言 第一代程序设计语言也称机器语言。它需要用二进制机器代码编成程序来控制计算机执行规定的操作。在20世纪50年代出现了汇编语言,在编写程序的时候能够通过一些简单的命令来代替二进制指令。面向过程的高级程序设计语言 面向过程就是结构化程序设计。任何程序都可以用顺序、选择、循环这三种

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(配套课件-Java面向对象程序设计案例教程.ppt)为本站会员(三亚风情)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|