《第二章结构化程序设计.ppt》由会员分享,可在线阅读,更多相关《第二章结构化程序设计.ppt(69页珍藏版)》请在优知文库上搜索。
1、第二章第二章 结构化程序设计结构化程序设计2.1 2.1 标识符和关键字标识符和关键字2.2 2.2 数据类型、数据类型、变量和常量变量和常量2.3 2.3 运算符运算符2.4 2.4 控制结构控制结构2.5 2.5 结构化程序设计结构化程序设计2.1 2.1 标识符和关键字标识符和关键字标识符:是对变量、类、方法、标号和其它各种用户标识符:是对变量、类、方法、标号和其它各种用户自定义对象的命名。自定义对象的命名。在在JavaJava中,标识符必须以中,标识符必须以字母字母、下划线()或美元、下划线()或美元符()开头,后面跟符()开头,后面跟0 0个或多个由字母、下划线、个或多个由字母、下划
2、线、美元符或数字组成的字符数字串。美元符或数字组成的字符数字串。 标识符是大小写敏感的标识符是大小写敏感的 字母是字母是UnicodeUnicode字符集字符集 没有最大长度限制没有最大长度限制 除去关键字、除去关键字、false、true和和null问题问题: 是是/不是不是 标识符标识符?myVariable 9pinsMYVARIABLE i a+ctesting1-2-3_myvariable java¨ My Variable $myvariable _9pins Its 猫猫 Java关键字关键字具有特殊含义的字符序列具有特殊含义的字符序列例如:例如: public、 sta
3、tic和和class 具有特殊用途,不能作为变量名、方法名和类具有特殊用途,不能作为变量名、方法名和类名名 Java关键字关键字(50个个)2.2 2.2 数据类型、数据类型、变量和常量变量和常量一、数据类型概述一、数据类型概述二、变量和常量二、变量和常量三、简单数据类型三、简单数据类型四、简单数据类型的相互转换四、简单数据类型的相互转换五、简单数据类型的类包装五、简单数据类型的类包装一、一、 数据类型概述数据类型概述简单数据类型(基本数据类型)简单数据类型(基本数据类型)1.1.布尔型布尔型2.2.字符型字符型3.3.整型整型4.4.浮点型浮点型复合数据类型(引用数据类型)复合数据类型(引用
4、数据类型)1.1.数组数组2.2.类或接口或枚举类或接口或枚举二、变量和常量二、变量和常量-变量变量p变量表示JAVA程序中的基本存储单元,总是具有某种数据类型:基本数据类型或引用数据类型p变量总是具有与其数据类型相对应的值p每个变量均具有: 名字、类型、一定大小的存储单元以及值变量名对应内存的位置定义格式:variableModifier typeSpecifier varName=value,varname=value; Java变量必须属于某种类型变量必须属于某种类型变量值也必须与变量类型相匹配例如:int studentNumber; / 声明单个变量声明单个变量double velo
5、city, distance; / 声明多个变量声明多个变量studentNumber=30;/ 给变量赋以整数给变量赋以整数30int studentNumber=30;/ 声明变量,并赋初声明变量,并赋初值值二、变量和常量二、变量和常量-常量常量常量是在程序运行期间不能被修改的量。分为:常量是在程序运行期间不能被修改的量。分为:普通常量(常数)普通常量(常数)标识符常量(常值变量):标识符常量(常值变量): final;final;如如MAX_VALUEMAX_VALUE final double PI=3.14159; final double PI=3.14159;Java常量常量Ja
6、va常量包括基本数据类型常量、字符串(String)常量和null 布尔布尔(boolean)常量只有两个:常量只有两个:true 和和 falsec, u0061, u0051 和和 u005a 是是char常量常量.34是是int常量常量1.5, 45.6, 76.4E8和和-32.0是是double常量常量34L是是long常量常量. 1.5F, 45.6f, 76.4E8F和和-32.0F是是float常量常量“Hello World!”是是String常量常量null是引用数据类型的常量是引用数据类型的常量三、简单数据类型三、简单数据类型整型整型整型都为带符号数整型都为带符号数类型类
7、型名称名称类型类型定义定义宽度宽度初始值初始值表示表示十进制八进制十六进制十进制八进制十六进制字节型字节型bytebyte8 8(byte)0(byte)032320320320 x320 x32短整型短整型 shortshort1616(short)(short)0 032320320320X320X32整型整型intint32320 032320320320 x320 x32长整型长整型longlong64640L0L32L32L32l32l032L032L 0 x32l0 x32l三、简单数据类型三、简单数据类型浮点型(实型)浮点型(实型)类型名称类型名称 类型定义类型定义宽宽度度初始值
8、初始值表示表示小数形式小数形式 指数形式指数形式单精度数单精度数FloatFloat32320.00.0f f23.12f -5E9F23.12f -5E9F23.12 -5e923.12 -5e9双精度数双精度数doubledouble64640.00.0三、简单数据类型三、简单数据类型字符型字符型charchar定义定义数据位宽度为数据位宽度为16bit,16bit,使用使用UnicodeUnicode字符集字符集字符常量字符常量: :A A利用转义字符来表示一些控制字符利用转义字符来表示一些控制字符: 换行(换行(nn); ;回车(回车(r);r); 1 1到到4 4位十六进制所表示的字
9、符(位十六进制所表示的字符(uxxxxuxxxx) 常用的转义字符常用的转义字符b (退格)f (换页)n (换行)r (回车)t (水平制表符(到下一个tab位置) (单引号) (双引号) (反斜杠)三、简单数据类型三、简单数据类型字符型字符型public class Welcome3 public static void main( String args ) System.out.println( WelcomentonJavan Programming! ); 三、简单数据类型三、简单数据类型布尔型布尔型booleanboolean定义定义数据位宽度为数据位宽度为1 1变量的值变量的值
10、: :只能是真只能是真(true)(true)和假和假(false)(false)进行流程控制进行流程控制四、简单数据类型的相互转换四、简单数据类型的相互转换自动(隐式)类型转换和强制(显式)类型转自动(隐式)类型转换和强制(显式)类型转换换整型、实型、字符型整型、实型、字符型byte-short-int-long-float-double char-int-long-float-double 自动类型转换自动类型转换强制类型转换强制类型转换 五、对简单数据类型的类包装五、对简单数据类型的类包装java.langjava.lang包中有类包中有类:BooleanCharacterByteDou
11、bleFloatIntegerLongShort习题习题1. Java的简单数据类型有哪些?与其他语言的简单数据类型有哪些?与其他语言的最大不同在哪里?的最大不同在哪里?2. 请指出下面数值的类型。请指出下面数值的类型。 178;8864L;37.266;37.266D;87.363F;26.77e3;c;true3. 仔细阅读下面的程序仔细阅读下面的程序,找出并改正其中的错找出并改正其中的错误误.习题习题Class Arithmetic public static void main (String args) final int x = 17,y = 5; boolean mycom =
12、1; System.out.println(“x=”+x); System.out.println(“y= ” +y) if(mycom) System.out.println(“x+y= ” + (x+y); 习题习题4.4. 请说明下面程序中所有变量的作用域请说明下面程序中所有变量的作用域. .Class Spot public int size; public Spot (int intSize) int pointx,pointy; size = intSize; pointx=intSize; 2.3 2.3 运算符运算符运算符运算符指明对操作数所进行的运算。指明对操作数所进行的运算
13、。表达式表达式是变量、常量、运算符、方法调用的序是变量、常量、运算符、方法调用的序列,它执行指定的计算并返回某个确定的列,它执行指定的计算并返回某个确定的值。值。2.3 2.3 运算符运算符1)1) 算术运算符(算术运算符(+,- - -, + +,- - , * *,/ /,% % )2)2) 关系运算符(,关系运算符(, = =, = =,= = =,!,!= =)3)3) 逻辑运算符(!,逻辑运算符(!, )4)4) 位运算符(位运算符( , , , , , , ,)5)5) 赋值运算符(基本:赋值运算符(基本:= = ;复合:;复合: +=+=,-=-=,* *= =,/=/=,%=,
14、%=,)2.3 2.3 运算符运算符6)6) 条件运算符(?:条件运算符(?: )条件?表达式)条件?表达式1 1:表达:表达式式2 2 7)7) 其它运算符(分量运算符其它运算符(分量运算符. .,字符串合并,字符串合并+ +,(类型(类型) )表达式,下标运算符表达式,下标运算符等)等) 表达式有算术表达式、关系表达式、逻表达式有算术表达式、关系表达式、逻辑表达式、位运算表达式、赋值表达式、条辑表达式、位运算表达式、赋值表达式、条件表达式等。件表达式等。1. 算术运算符算术运算符算术运算符包括:+, -, *, /, +, -, %没有指数运算没有指数运算Math.pow(2.0, 3.0
15、); / 2.03.0整数除法:截去余数整数除法:截去余数7 / 5 结果为结果为 1取模:返回余数取模:返回余数7 % 5 结果为结果为 2 2. 关系运算符关系运算符六个关系运算符: 、=、= 和 !=例如:1 2; / false3.5 != 1; / true 51.5 = 23.0; / true540 = 654; / true24 = 3*8; / trueboolean test1=(10 10); / test1= false; 注意事项注意事项、=只能用来比较两个数值类型数据(numbers含characters)的大小不能用于不能用于Strings、booleans、ar
16、rays或其他或其他类型类型3.布尔逻辑运算符布尔逻辑运算符六个布尔逻辑运算符:1) & (逻辑与逻辑与AND)2) | (逻辑或逻辑或OR)3) (逻辑异或逻辑异或XOR )4) ! (逻辑非逻辑非NOT)单目运算符单目运算符, 即只有一个操作数即只有一个操作数5) & (条件与条件与AND) 6) | (条件或条件或OR)&和| 如果从第一个操作数可以推断出表达式结果,就不再计算第二个操作数例如:if (x = 2) & (y != 2)System.out.println(两个条件都为 true.); 逻辑运算(&和| )两个操作数均会被运算 (即不采用短路规则)用不用短路规则,副作用不同 例如, (birthday = true) | (+age = 65)4. 位运算符位运算符位运算符包括:&、|、和 带符号右移带符号右移2)不带符号右移不带符号右移移位操作是:先将整数写成二进制形式,然后按位操作,最后产生一个新的数注意: 只用于整数5. 赋值类运算符赋值类运算符赋值类运算符包括:=、+=、-=、*=、/=、&=、|=、%=、=和=op1=op1 二元运算符二元运算符 op2