Java初学 简单课件 第2章 Java语言基础.ppt

上传人:hyn****60 文档编号:70745845 上传时间:2023-01-27 格式:PPT 页数:119 大小:1.20MB
返回 下载 相关 举报
Java初学 简单课件 第2章 Java语言基础.ppt_第1页
第1页 / 共119页
Java初学 简单课件 第2章 Java语言基础.ppt_第2页
第2页 / 共119页
点击查看更多>>
资源描述

《Java初学 简单课件 第2章 Java语言基础.ppt》由会员分享,可在线阅读,更多相关《Java初学 简单课件 第2章 Java语言基础.ppt(119页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、第第2 2章章 JavaJava语言基础语言基础2.1 语言成分语言成分2.2 流程控制语句流程控制语句2.3 数组数组2.4 静态方法静态方法2.5 字符串字符串1第二章第二章 Java语言基础语言基础学习目标:学习目标:掌握掌握Java语言的基本数据类型、操作符、表达式;语言的基本数据类型、操作符、表达式;掌握掌握Java程序的流程控制方式,重点是分支结构和循程序的流程控制方式,重点是分支结构和循环结构。环结构。掌握掌握Java中数组的概念及使用中数组的概念及使用了解了解Java应用程序的应用程序的一般结构一般结构2.1 语言成分语言成分一一.标识符与关键字标识符与关键字二二.基本数据类型

2、基本数据类型三三.变量与常量变量与常量四四.运算符与表达式运算符与表达式3一一.标识符与标识符与关键字关键字n Unicode字符编码:字符编码:由国际由国际Unicode协会编制,收录了全世界协会编制,收录了全世界所有语言文字中的字符,是一种跨平台的字符编码。所有语言文字中的字符,是一种跨平台的字符编码。nUSC:指采用指采用Unicode字符编码的通用字符集。字符编码的通用字符集。nUnicode字符编码的两种方案:字符编码的两种方案:16位编码和位编码和32位编码,对应的字符集称为位编码,对应的字符集称为USC-2和和USC-4nJava语言采用语言采用USC-2字符集字符集,其前,其前

3、128个字符与个字符与ASCII字符集字符集 完全一致,之后是其他语言文字,如拉丁语、汉字等。完全一致,之后是其他语言文字,如拉丁语、汉字等。4一一.标识符与标识符与关键字关键字1.关键字关键字2.标识符标识符3.分隔符分隔符4.注释注释5.程序书写风格程序书写风格5一一.标识符与标识符与关键字关键字 关键字是由关键字是由Java语言定义的、具有特定含义的语言定义的、具有特定含义的单词单词。每一个关键字都有一种特定含义,不能被。每一个关键字都有一种特定含义,不能被赋予别的含义。赋予别的含义。关键字在关键字在UltraEdit、JCreator等编辑器中以等编辑器中以蓝蓝色色显示。显示。1.关键

4、字关键字(keyword)6一一.标识符与标识符与关键字关键字2.标识符标识符(identifier)标识符是以标识符是以字母开头的字母数字序列字母开头的字母数字序列,是用户定义的单,是用户定义的单词,用于命名变量、常量、类、对象等元素。词,用于命名变量、常量、类、对象等元素。标识符标识符的的命名规则命名规则说明如下说明如下 :数字指数字指0-90-9,字母指大小写英文字母、下划线,字母指大小写英文字母、下划线(_)(_)和美元和美元符符($)($),也可以是,也可以是Unicode字符集中的字符,如汉字等。字符集中的字符,如汉字等。可以是字母、数字等字符的任意组合,不能包括其他可以是字母、数

5、字等字符的任意组合,不能包括其他字符(如字符(如+、-等)等)区分字母大小写区分字母大小写不能使用关键字不能使用关键字长度不受限制长度不受限制7一一.标识符与标识符与关键字关键字Java约定:约定:关键字、变量名、对象名、方法名、包名通常关键字、变量名、对象名、方法名、包名通常全全 部小写部小写;如果由多个单词构成标识符,则如果由多个单词构成标识符,则首字母小写首字母小写,其,其后单词字母大写后单词字母大写,如,如toString;类名类名首字母首字母大写大写;常量名常量名全部字母全部字母均大写均大写。81.myVariable 2.9pins3.MYVARIABLE 4.i 5.a+c6.t

6、esting1-2-31._myvariable2.$myvariable 3.猫一一.标识符与标识符与关键字关键字9一一.标识符与标识符与关键字关键字3.分隔符分隔符(separator)分隔符用于分开两个语法成分,不同的语法分隔符用于分开两个语法成分,不同的语法成分使用不同的分隔符。成分使用不同的分隔符。空格空格关键字、标识符的分隔符;关键字、标识符的分隔符;分号;分号;语句的分隔符;语句的分隔符;逗号,逗号,数据的分隔符。数据的分隔符。10一一.标识符与标识符与关键字关键字4.注释注释(commentary)n 注释:程序中注释:程序中用于说明和解释的一段文字用于说明和解释的一段文字,对

7、程序运,对程序运行不起作用。行不起作用。n 程序中添加注释的程序中添加注释的目的是目的是增强程序的可读性增强程序的可读性。/单行注释单行注释,注释号,注释号“/”后的一行内容为注释后的一行内容为注释/*/*多行注释多行注释,两个注释号之间的一行或多行内容为注释,两个注释号之间的一行或多行内容为注释*/*/*/*文档注释文档注释,用于从源代码自动生成文档,用于从源代码自动生成文档 执行执行javadoc命令,可根据源代码中的内容生成命令,可根据源代码中的内容生成Web网页网页*/*/11(结构清晰,适当注释,命名规范结构清晰,适当注释,命名规范)一一.标识符与标识符与关键字关键字5.程序书写风格

8、程序书写风格结构清晰结构清晰:顺序语句顺序语句对齐格式;对齐格式;循环体、函数体等语句循环体、函数体等语句缩进格式显示语句间的缩进格式显示语句间的层次关系,即以上一句为参照,下一句向右缩进层次关系,即以上一句为参照,下一句向右缩进4 4个个空格,其余类推。空格,其余类推。12二二.基本数据类型基本数据类型1.什么是数据类型什么是数据类型2.数据类型的分类数据类型的分类3.基本数据类型基本数据类型 整数类型整数类型 浮点数类型浮点数类型 布尔类型布尔类型 字符类型字符类型13二二.基本数据类型基本数据类型1.什么是数据类型什么是数据类型数据数据描述客观事物的数字、字符以及所有能输入到计算机描述客

9、观事物的数字、字符以及所有能输入到计算机 中并能被计算机接受的各种符号集合。中并能被计算机接受的各种符号集合。类型类型具有相同逻辑意义的一组值的集合。具有相同逻辑意义的一组值的集合。数据类型数据类型指一个类型和定义在这个类型上的操作集合。指一个类型和定义在这个类型上的操作集合。定义了定义了数据的性质数据的性质、取值范围取值范围以及以及对数据所能对数据所能 进行的运算和操作进行的运算和操作。14二二.基本数据类型基本数据类型2.数据类型的分类数据类型的分类基本数据类型:数值类型基本数据类型:数值类型 整数类型整数类型byte、short、int、long 浮点数类型浮点数类型float、doub

10、le 字符类型字符类型char 布尔类型布尔类型boolean引用数据类型:数组引用数据类型:数组 类类(class)接口接口(interface)15二二.基本数据类型基本数据类型2.数据类型的分类数据类型的分类 基本数据类型是由一种基本数据类型是由一种简单数据简单数据构成的数据类型,这种构成的数据类型,这种简单数据的简单数据的值是不可分解的值是不可分解的,它可直接参与该类型所允许的,它可直接参与该类型所允许的运算。运算。基本基本数据类型数据类型(primitive types)整数类型整数类型byte,short,int,long浮点数类型浮点数类型float,double字符类型字符类型

11、char布尔类型布尔类型boolean16二二.基本数据类型基本数据类型2.数据类型的分类数据类型的分类 引用引用数据类型数据类型(reference types)n基本数据类型的变量基本数据类型的变量保存数据值保存数据值,n引用数据类型的变量引用数据类型的变量保存地址保存地址。引用数据类型:引用数据类型:数组(数组(arrayarray)、类()、类(classclass)、接口()、接口(interfaceinterface)173.3.基本数据类型基本数据类型n 整型是具有整型是具有固定上下界固定上下界的整数,包括的整数,包括正整数、零、负整数。正整数、零、负整数。nJava语言定义了语

12、言定义了4 4种整数类型种整数类型,每种整数类型的值都是,每种整数类型的值都是带符带符号位的号位的,不同整数类型的,不同整数类型的差别差别在于在于占用内存的大小不同和占用内存的大小不同和数据取值范围不同数据取值范围不同。n一个整数隐含类型为一个整数隐含类型为int。表示一个长整数值时,需要在整。表示一个长整数值时,需要在整数后加上后缀数后加上后缀L或或l。Java提供了提供了3种进制的整数表示形式:种进制的整数表示形式:十进制数、八进制数、十六进制数十进制数、八进制数、十六进制数(1)整数类型整数类型(int)18类型类型描述描述占用空占用空间间字节型字节型byte 8 8位有符号整数,其数值

13、范围在位有符号整数,其数值范围在-128127,即即-2727-11字节字节短整型短整型short 1616位有符号整数,其数值范围在位有符号整数,其数值范围在 -3276832767之间之间,即即-215215-12字节字节整型整型int 3232位有符号整数,其数值范围在位有符号整数,其数值范围在 -2147,483,6482147,483,647之间之间,即即-231231-14字节字节长整型长整型long 64位有符号整数,其值在位有符号整数,其值在-263263-1之间之间,即即-263263-18字节字节(1)(1)整数类型整数类型(int)3.3.基本数据类型基本数据类型193.

14、3.基本数据类型基本数据类型nJava采用浮点型表示采用浮点型表示数学中的实数数学中的实数,一个浮点数值包括整,一个浮点数值包括整数部分和小数部分。数部分和小数部分。JavaJava的浮点数类型有两种:的浮点数类型有两种:单精度浮点数和双精度浮点数单精度浮点数和双精度浮点数浮点数有两种表示法:浮点数有两种表示法:标准记数法标准记数法如如1.0,123.45等等科学记数法科学记数法由十进制整数、小数点、小数和指数部分构成。由十进制整数、小数点、小数和指数部分构成。如如123.45可以表示为可以表示为1.2345E+2其中,其中,E E之前之前的数称为的数称为尾数尾数,表示数据精度;,表示数据精度

15、;E E之后之后的数称为的数称为阶码阶码,表示是,表示是1010的次方数的次方数,必须是,必须是整数。整数。(2)(2)浮点数类型浮点数类型(float)20类型类型描述描述占用空间占用空间单精度浮单精度浮点数点数float32位单精度浮点数位单精度浮点数4字节字节双精度浮双精度浮点数点数double64位双精度浮点数位双精度浮点数8字节字节(2)(2)浮点数类型浮点数类型(float)3.3.基本数据类型基本数据类型213.3.基本数据类型基本数据类型(3)(3)布尔类型(布尔类型(boolean)n Java中的布尔型中的布尔型,它的值只能有,它的值只能有“true”或或“false”两两

16、种种形式。形式。与与C/C+中的逻辑值不同的是,中的逻辑值不同的是,它不能代表整数它不能代表整数,同时它同时它 也也不是字符串,不是字符串,不能被转换成字符串不能被转换成字符串常量常量。n 所所有有关系运算的返回值都为布尔型关系运算的返回值都为布尔型,主要用于条件运算,主要用于条件运算。223.3.基本数据类型基本数据类型(4)(4)字符类型(字符类型(char)字符字符类型表示类型表示Unicode字符字符,一个字符占用,一个字符占用1616位位。字符字符常量的两种表示法:常量的两种表示法:用用单引号单引号将将可见可见ASCII字符字符括起来;例如括起来;例如A A用用Unicode值表示值

17、表示,前缀是,前缀是“uu”,表示范围为,表示范围为 u0000uFFFF;例如;例如u0041表示表示A A。不可见的不可见的ASCII控制字符控制字符(如换行符、回车符等)用(如换行符、回车符等)用转义转义字符表示字符表示,转义字符的前缀是,转义字符的前缀是“”。Java a转义字符表转义字符表23转义续列转义续列UnicodeUnicode转义代码转义代码含义含义nnu000au000a换行符换行符ttu0009u0009制表符制表符bbu0008u0008回格(回格(BS)rru000du000d回车符回车符ffu000cu000c换页换页 u0027u0027单引号单引号u0022u

18、0022双引号双引号u005cu005c反斜杠反斜杠3.3.基本数据类型基本数据类型(4)(4)字符类型字符类型24n变量变量在程序执行中其值可以发生变化的量。在程序执行中其值可以发生变化的量。三三.变量与常量变量与常量1.变量变量(variable)n变量变量的的4个基本要素:个基本要素:名字、类型、值和作用域名字、类型、值和作用域。变量声明变量声明 修饰符修饰符 类型类型 变量变量 =表达式表达式,变量变量=表达式表达式注:注:和和中均是可选项,中均是可选项,-可以重复可以重复0 0至至1 1次,次,-可以重复可以重复0 0至多次。至多次。变量参与的运算和操作变量参与的运算和操作 取决于变

19、量的数据类型。取决于变量的数据类型。25三三.变量与常量变量与常量2.最终变量最终变量n最终变量最终变量Java语言提供一种特殊的变量,只能进行语言提供一种特殊的变量,只能进行 一次赋值。采用关键字一次赋值。采用关键字final声明。声明。例如例如:final int value;/声明最终变量,声明时没有赋值声明最终变量,声明时没有赋值 value=100;/最终变量只能进行一次赋值最终变量只能进行一次赋值26三三.变量与常量变量与常量3.常量常量n常量常量在程序执行中其值不能被改变的量。在程序执行中其值不能被改变的量。直接常量直接常量直接常量直接常量指在程序中直接引用的常量,包括数值型常量

20、和非指在程序中直接引用的常量,包括数值型常量和非 数值型常量。数值型常量。数值型常量数值型常量包括整数和浮点数;包括整数和浮点数;非数值型常量非数值型常量包括字符常量、字符串常量和布尔常量。包括字符常量、字符串常量和布尔常量。27三三.变量与常量变量与常量3.常量常量n以标识符形式出现的常量,以标识符形式出现的常量,在程序中不能改变其值在程序中不能改变其值,采,采用关键字用关键字final声明。声明。nJava语言约定常量标识符语言约定常量标识符全部用大写字母表示全部用大写字母表示。符号常量符号常量例如:例如:final int MAX=10;28四四.运算符与表达式运算符与表达式1.运算符运

21、算符2.运算符的优先级运算符的优先级3.运算符的结合性运算符的结合性4.表达式书写的注意事项表达式书写的注意事项5.运算的运算的类型兼容原则类型兼容原则6.运算的正确性判断运算的正确性判断29四四.运算符与表达式运算符与表达式(1)算术运算符算术运算符(2)关系运算符关系运算符(3)位位运算符运算符(4)逻辑逻辑运算符运算符(5)赋值运算符赋值运算符(6)强制类型转换符强制类型转换符1.运算符运算符(7)条件运算符条件运算符(8)括号运算符括号运算符(9)字符串连接运算符字符串连接运算符(10)点运算符点运算符(11)对象运算符对象运算符(12)逗号运算符逗号运算符(13)new运算符运算符3

22、0算术运算符:算术运算符:+(正)、(正)、-(负)、(负)、+、-;/单目运算单目运算 +(加)、(加)、-(减)、(减)、*、/(除)、(除)、%(取余);(取余);/双目运算双目运算1.运算符运算符四四.运算符与表达式运算符与表达式 关系运算符:关系运算符:=、=、=位运算符:位运算符:(非)(非)、&(与)、(与)、|(或)、(或)、(异或)(异或)、(右移位)、(右移位)、(无符号右移位)(无符号右移位)逻辑运算符:逻辑运算符:&(与)、(与)、|(或)、(或)、!(非)、(非)、(异或)、(异或)、&(条件与)、(条件与)、|(条件或)(条件或)31四四.运算符与表达式运算符与表达

23、式 赋值运算符:赋值运算符:=、+=+=等等 强制类型转换符:强制类型转换符:(数据类型数据类型)表达式表达式 条件运算符:条件运算符:表达式表达式1?1?表达式表达式2:2:表达式表达式3 3 括号运算符:括号运算符:()、字符串连接运算符:字符串连接运算符:+System.out.println(max=+max);32四四.运算符与表达式运算符与表达式【例例2.1】求明天是星期几。求明天是星期几。【例例2.2】判断一个年份是否为闰年。判断一个年份是否为闰年。点运算符:点运算符:.对象运算符:对象运算符:instanceof 逗号运算符:逗号运算符:,newnew运算符:运算符:用于申请数

24、组存储空间,创建对象。用于申请数组存储空间,创建对象。33四四.运算符与表达式运算符与表达式【例例2.2】判断一个年份是否为闰年判断一个年份是否为闰年.(演示(演示布尔类型布尔类型的运算)的运算)闰年的规定说明:闰年的规定说明:(1)(1)不能被不能被100整除整除但但能被能被4整除整除的年份是闰年;的年份是闰年;(2)(2)能被能被400整除整除的年份是闰年。的年份是闰年。思考:思考:(1)(1)如果要求任意一年是否为闰年程序怎么改?如果要求任意一年是否为闰年程序怎么改?(2)(2)输入的年份是否应该有个合法范围?输入的年份是否应该有个合法范围?34不同的运算符具有不同的优先顺序不同的运算符

25、具有不同的优先顺序可以用可以用()()来改变优先顺序或使表达式更来改变优先顺序或使表达式更容易理解容易理解 2.运算符的优先级运算符的优先级四四.运算符与表达式运算符与表达式 表表2-7 运算符的优先级及结合性运算符的优先级及结合性35四四.运算符与表达式运算符与表达式3.运算符的结合性运算符的结合性(1)单目运算符的结合性单目运算符的结合性从左至右从左至右:括号运算符括号运算符、(),即操作数在运算符的左边;,即操作数在运算符的左边;从右至左从右至左:+、-、!、!、newnew和类型强制转换符和类型强制转换符()(),即操,即操作数在运算符的右边;作数在运算符的右边;36四四.运算符与表达

26、式运算符与表达式3.运算符的结合性运算符的结合性(1)单目运算符的结合性单目运算符的结合性两种结合性两种结合性:+、-;单独运算时,两种结合性运算结果一致。单独运算时,两种结合性运算结果一致。例如:例如:i+;/从左至右从左至右 +i;/从右至左从右至左当与其它运算符结合时,就表现出两种结合性。当与其它运算符结合时,就表现出两种结合性。例如:例如:int i=0,j;j=i+;/左结合,先赋值再自增,等价于左结合,先赋值再自增,等价于j=i;i+;j=+i;/右结合,先自增再赋值,等价于右结合,先自增再赋值,等价于i+;j=i;37四四.运算符与表达式运算符与表达式3.运算符的结合性运算符的结

27、合性(2)双目运算符的结合性双目运算符的结合性从左至右从左至右:其他双目运算符;其他双目运算符;从右至左从右至左:赋值和复合赋值运算符;赋值和复合赋值运算符;例如例如:int m,n;m=n=2;m+=n+=2;/结果为结果为m=2,n=2/结果为结果为m=6,n=438四四.运算符与表达式运算符与表达式4.表达式书写的注意事项表达式书写的注意事项n 乘法运算的运算符乘法运算的运算符*不能省略不能省略;n 数学运算的数学运算的、必须分别写成必须分别写成!=!=、=、=;=;n 数学中的数学中的分式分式必须必须写成除式写成除式;n 只有只有圆括号圆括号()()能够能够改变运算次序改变运算次序,不

28、能使用不能使用或或改变运改变运 算次序。算次序。39四四.运算符与表达式运算符与表达式5.运算的运算的类型兼容原则类型兼容原则(1)类型相容(类型相容(type compatibility)n 指两个不同的数据类型具有指两个不同的数据类型具有某些相同的性质某些相同的性质,其变量,其变量能够能够 参加共同的运算参加共同的运算。例如:例如:1.0+1 /结果数据类型为浮点型结果数据类型为浮点型40四四.运算符与表达式运算符与表达式5.运算的运算的类型兼容原则类型兼容原则(2)赋值相容(赋值相容(assignment compatibility)n 指一种数据类型的值可以通过赋值操作赋给指一种数据类

29、型的值可以通过赋值操作赋给另一种另一种数据数据 类型的变量。类型的变量。赋值相容赋值相容具有具有方向性方向性,是,是不对称不对称的关系,即赋值时,变量的关系,即赋值时,变量 数据类型必须比表达式数据类型占用的字节数数据类型必须比表达式数据类型占用的字节数 长,长,Java会自动将表达式转化为较长的数据类型会自动将表达式转化为较长的数据类型 后再赋值。后再赋值。赋值不相容时赋值不相容时,有些情况可以通过有些情况可以通过强制类型转换强制类型转换实现。实现。41四四.运算符与表达式运算符与表达式6.运算的运算的正确性判断正确性判断422.2 流程控制语句流程控制语句一一.流程控制结构流程控制结构二二

30、.顺序结构语句顺序结构语句三三.选择语句选择语句四四.循环语句循环语句五五.转移语句转移语句43一一.流程控制结构流程控制结构1.程序的三种基本结构程序的三种基本结构顺序结构、分支结构、循环结构顺序结构、分支结构、循环结构44三种基本结构的共同特点:三种基本结构的共同特点:1.1.程序的三种基本结构程序的三种基本结构只有一个入口点只有一个入口点,并且,并且只有一个出口点只有一个出口点;结构内的结构内的每一部分都每一部分都有机会有机会被执行到被执行到;例图(例图(1 1)结构内结构内没有没有“死循环死循环”(无终止的循环)。(无终止的循环)。例图例图(2 2)452.Java语句分类语句分类46

31、二二.顺序结构语句顺序结构语句1.赋值语句赋值语句 表达式表达式;2.空语句空语句 i=1;3.复合语句复合语句 变量声明或常量声明变量声明或常量声明;语句序列语句序列;471.if语句语句三三.选择语句选择语句if 语句语句 A.if语句的语法格式语句的语法格式if (布尔表达式布尔表达式 )语句语句1;else 语句语句2;48三三.选择语句选择语句if 语句语句【例例2.3】求三个整数中的最大值。求三个整数中的最大值。注意:注意:对比对比if语句语句与与条件表达式的使用条件表达式的使用课后练习:课后练习:用用条件表达式条件表达式求最大值;求最大值;用用if语句语句求最小值。求最小值。49

32、ifif语句语句if-elseif-else语句语句三三.选择语句选择语句if 语句语句B.ifB.if语句两种形式语句两种形式50C.If 语句嵌套语句嵌套三三.选择语句选择语句if 语句语句例:例:if(n=100)if(n=100)if(n=999)语句语句1 1;else 语句语句2 2;Java语言规定:语言规定:else总是与总是与最近的最近的一个一个if语句匹配。语句匹配。注:注:缩进书写格式本身与匹配无关。缩进书写格式本身与匹配无关。512.switch语句语句switch(表达式表达式)case 常量表达式常量表达式1 1:语句序列语句序列1;1;break;case 常量表

33、达式常量表达式2 2:语句序列语句序列2;2;break;default:语句序列语句序列;三三.选择语句选择语句switch 语句语句52三三.选择语句选择语句switch 语句语句说明:说明:(1)和和 的数据类型的数据类型必须是整数或字符必须是整数或字符 类型类型,不能为布尔类型不能为布尔类型,并且两者的,并且两者的数据类型必须一致数据类型必须一致;(2)在语句体中,每个常量表达式出现的在语句体中,每个常量表达式出现的先后次序没有限制先后次序没有限制,但常量但常量结果值必须唯一结果值必须唯一;(3)不同的常量表达式可以不同的常量表达式可以公用公用一些语句序列;一些语句序列;(4)每个分支

34、的语句序列通常以每个分支的语句序列通常以break语句语句结束,结束,break语句的作用是语句的作用是强制退出强制退出switch语句语句。53三三.选择语句选择语句switch 语句语句【例例2.4】求一个日期(年月日)对应的是星期几。求一个日期(年月日)对应的是星期几。P4054四四.循环语句循环语句while语句语句1.while语句语句A.while语句语法语句语法:while(布尔表达式布尔表达式)语句语句;【例例2.5】用用while语句求语句求1 11010的累加和。的累加和。P41P41思考:思考:(1)如果改变循环体内两条语句的次序,则如何修改如果改变循环体内两条语句的次序

35、,则如何修改whilewhile语句语句 以实现相同功能?以实现相同功能?(2)如何显示:如何显示:Sum=1+Sum=1+10=55+10=55Sum(8)=1+2+3+4+5+6+7+8+9+10=36Sum(8)=1+2+3+4+5+6+7+8+9+10=36i=0;i=0;while(while(i inn)55class Sum_while public static void main(String args)int i=1,n=10,s=0;System.out.println(“s=”+s);System.out.println(“i=”+i);四四.循环语句循环语句while

36、语句语句while(i=n)s+=i;i+;运行结果:运行结果:s=55 i=1156四四.循环语句循环语句while语句语句B.while语句循环执行次数问题讨论语句循环执行次数问题讨论n循环条件永远为循环条件永远为true出现死循环;出现死循环;n“先判断后执行先判断后执行”循环最少执行循环最少执行0 0次;次;n避免死循环的相关条件避免死循环的相关条件 循环条件表达式中的变量;循环条件表达式中的变量;【例例2.6】用辗转相除法求两个整数的最大公因数。用辗转相除法求两个整数的最大公因数。P42P42 练习练习57四四.循环语句循环语句do-while语句语句2.do-while语句语句A.

37、while语句语法语句语法:do 语句语句;while(布尔表达式布尔表达式););58图图2.5 while与与do-while语句执行流程语句执行流程 四四.循环语句循环语句do-while语句语句59四四.循环语句循环语句do-while语句语句【例例2.5-1】用用do-while语句求累加和。语句求累加和。P44P44 对比:对比:例例2.5 例例2.5-1 例例2.8 while语句语句do-while语句语句for语句语句60四四.循环语句循环语句do-while语句语句public class Sum_dowhile public static void main(String

38、 args)int i=1,n=10,s=0;System.out.println(“s=”+s);System.out.println(“i=”+i);do s+=i;i+;while(i=n)运行结果:运行结果:s=55 i=1161B.do-while语句循环执行次数问题讨论语句循环执行次数问题讨论四四.循环语句循环语句do-while语句语句n“先执行后判断先执行后判断”循环最少执行循环最少执行1 1次;次;n循环条件永远为循环条件永远为true出现死循环;出现死循环;n避免死循环的相关条件避免死循环的相关条件 循环条件表达式中的变量;循环条件表达式中的变量;【例例2.7】计算计算Fi

39、bonacci序列。序列。练习练习P44P4462A.for语句语法语句语法:for(表达式表达式1;1;表达式表达式2;2;表达式表达式3)3)语句语句;四四.循环语句循环语句for语句语句3.for语句语句最有效、最灵活的循环结构最有效、最灵活的循环结构3个表达式的作用:个表达式的作用:(1)给给循环变量赋初值循环变量赋初值;(2)给出给出循环条件循环条件,结果为布尔值;,结果为布尔值;(3)给出给出循环变量的变化规律循环变量的变化规律,通常是通常是递增或递减递增或递减的。的。63四四.循环语句循环语句for语句语句【例例2.8】用用for语句求累加和并显示计算公式。语句求累加和并显示计算

40、公式。P45P45对比:对比:例例2.5 例例2.5-1 例例2.8 while语句语句do-while语句语句for语句语句64四四.循环语句循环语句for语句语句例:例:如果一个人出生于如果一个人出生于19701970年,那么他这一辈子能有几年,那么他这一辈子能有几 个闰年个闰年(以以7070岁为寿命长度岁为寿命长度)int length=70;int firstYear=1970;int year;for(int i=0;i length;i+)year=firstYear+i;if(year%4=0&year%100!=0)|(year%400=0)System.out.println

41、(year);1972197619801984198819921996200020042008201220162020202420282032203665四四.循环语句循环语句for语句语句B.B.for r语句循环执行次数问题讨论语句循环执行次数问题讨论f fo or r语语句句循循环环执执行行次次数数最最少少是是0 0次次;条条件件不不合合适适时时,f fo or r语句语句也会出现死循环也会出现死循环。for(ifor(i=0;i=0;i0;i0;i+)+)for(ifor(i=0;i=0;i=0;i0;i+)+)for(ifor(i=0;i10;i+)=0;i10;i+)for(ifo

42、r(i=1;i=10;i+)=1;i=10;i+)for(ifor(i=1;i10;i-)=1;i10;i-)/循环次数为循环次数为0 0/循环执行循环执行1 1次次/循环执行循环执行1010次,次,i i取值为取值为0-90-9/循环执行循环执行1010次,次,i i取值为取值为1-101-10 /死循环死循环例如:例如:66四四.循环语句循环语句for语句语句f fo or r语语句句中,中,循循环变量的变化规律由环变量的变化规律由 3给出,不只给出,不只是增是增1 1或减或减1 1运算运算 B.forB.for语句循环执行次数问题讨论语句循环执行次数问题讨论for(i=1;i=8;i+=

43、2)例如:例如:/循环执行循环执行4 4次,次,i i取值为取值为1 1、3 3、5 5、7 7 3由由forfor语句自动执行,循环体中不需要改变循环语句自动执行,循环体中不需要改变循环变量的值。如果循环体中改变了循环变量的值,则会改变变量的值。如果循环体中改变了循环变量的值,则会改变循环的实际执行次数。循环的实际执行次数。例如:例如:for(i=1;i=10;i+)i+/表面循环表面循环1010次,实际循环次,实际循环5 5次次 67四四.循环语句循环语句for语句语句 C.C.使用使用forfor语句需要注意的问题语句需要注意的问题 f fo or r语语句句中,在条件中,在条件表达式之

44、后没有分号,在语句之后才有分号;表达式之后没有分号,在语句之后才有分号;f fo or r语语句句中的中的 1和和 3都可以是逗号表达式,并且都可以是逗号表达式,并且 1 还可以声明变量,此处所声明变量的作用域仅限于还可以声明变量,此处所声明变量的作用域仅限于forfor语句的循环体。语句的循环体。虽然虽然forfor语句中的语句中的3 3个表达式在语法上均可以省略,分号不能省略,但这样个表达式在语法上均可以省略,分号不能省略,但这样就体现不出就体现不出forfor语句的长处,不是结构化程序设计的好方法,极易产生错语句的长处,不是结构化程序设计的好方法,极易产生错误。误。例如:例如:for(i

45、=1;i=10;i+);s+=i;例如:例如:for(int i=1,j=1;i=10;i+,j+)例如:例如:for(;)/等价于等价于while(true),死循环,死循环681 使用使用while语句语句int count=1;int sum=0;while(count=100)sum+=count;count+;3 使用使用dowhile语句语句int count=1;int sum=0;do sum+=count;count+;while(count=100);2 使用使用for语句语句int sum=0,count;for(int count=0;count=100;count+)

46、sum+=count;找出三种语找出三种语句形式中的组句形式中的组成部分成部分?比较三种循比较三种循环语句的差异。环语句的差异。将循环初始值将循环初始值countcount设为设为101,101,观察其观察其sumsum的值。的值。四四.循环语句循环语句总结对比总结对比69n循环的嵌套循环的嵌套一个循环体内包含另一个完整的循环结构一个循环体内包含另一个完整的循环结构嵌套的层次多,多重嵌套嵌套的层次多,多重嵌套whilewhile循环、循环、do-whiledo-while循环、循环、forfor循环相互嵌套循环相互嵌套四四.循环语句循环语句多重循环多重循环4.多重循环多重循环【例例2.9】输出

47、九九乘法表输出九九乘法表。P46 演示演示for-for的两重循环结构。的两重循环结构。课下练习:课下练习:70五五.转移语句转移语句returnreturn语句的语法格式:语句的语法格式:return 返回值返回值;1.return语句语句 功能功能是是从当前方法中退出从当前方法中退出,并,并返回到返回到调用该方调用该方法法的语句处的语句处继续执行程序,同时继续执行程序,同时将方法中将方法中的运行结的运行结果果也带回到调用方法也带回到调用方法中中。71nswitch中用到的中用到的(已介绍已介绍),用来中止一个语句序列。,用来中止一个语句序列。nbreak可以用来退出一个循环。可以用来退出一

48、个循环。n带标号的带标号的break,跳出标号表示的循环,跳出标号表示的循环体。体。五五.转移语句转移语句break语句语句立即退出当前立即退出当前switch语句或循环语句。语句或循环语句。2.break语句语句 72不带标号的不带标号的break语句语句 class Test public static void main(String args)for(int j=1;j=0;k-=2)if(k=4)continue;System.out.print(“k=“+k+“t”);k=6 k=2 k=0752.3 数组数组 在在Java中数组是相同类型的对象的集合,并通过一个中数组是相同类型的

49、对象的集合,并通过一个名称名称(就是数组名就是数组名)来引用这个来引用这个集合。集合。可以可以声明任何类型的数组,无论是声明任何类型的数组,无论是Java基本数据类型,基本数据类型,还是还是类。类。762.3 数组数组 数组数组是一组同类型的变量或对象的集合是一组同类型的变量或对象的集合*数组数组的类型可以是的类型可以是基本类型基本类型,或类和接口,或类和接口*数组数组中每个元素的类型相同中每个元素的类型相同*引用引用数组元素通过数组元素通过数组名数组名 下标下标*数组数组下标下标(数组的索引数组的索引)从从0 0开始开始数组数组是一种特殊的对象是一种特殊的对象(Object)*定义定义类型类

50、型 (声明声明)*创建创建数组数组 (分配内存空间分配内存空间):new*释放释放(Java虚拟机完成虚拟机完成)一一维数组、多维数组维数组、多维数组772.3 数组数组一.一.一维数组一维数组二.二.二二.二维数二维数组组782.3 数组数组一.一.一维数组一维数组1.声明一维数组变量声明一维数组变量2.使用使用new为数组分配空间为数组分配空间3.数组长度数组长度length4.数组元素表示及运算数组元素表示及运算5.数组声明时赋初值数组声明时赋初值6.数组元素的初始化数组元素的初始化7.数组的引用模型数组的引用模型8.复制数组复制数组79一一.一维数组一维数组1.声明一维数组变量声明一维

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 生活休闲 > 生活常识

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

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com