《Java程序设计基础》PPT课件.ppt_第1页
《Java程序设计基础》PPT课件.ppt_第2页
《Java程序设计基础》PPT课件.ppt_第3页
《Java程序设计基础》PPT课件.ppt_第4页
《Java程序设计基础》PPT课件.ppt_第5页
已阅读5页,还剩61页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1 第二章Java程序设计基础 授课教师 杨杰明 2 目录 2 1常量2 2变量2 3java基本数据类型及相互转换2 4运算符与表达式2 5控制语句2 6数组 3 课前思考 C语言 C 语言中的有那些数据类型 C 语言中的数组如何定义和使用 C语言 C 语言中的控制结构有那些 C语言 C 语言中不同数据类型的转换 4 学习目标 掌握java语言中常量的表达方法掌握Java语言中的数据类型和默认值掌握Java语言数据类型之间的类型转换了解Java语言中控制结构与其他语言的区别掌握Java语言中数组的定义和使用 5 2 1常量 2 1 1整型常量12 十进制数 012 八进制数 等于十进制数10 0 x12 十六进制数 等于十进制数18 12L 长整型常量 6 2 1常量 2 1 2浮点型常量单精度浮点型常量19 34f3 1415F双精度浮点型常量3 1415765 23d34 444356D 7 2 1常量 2 1 3布尔常量布尔数据只有两种状态 在内存仅占1位true 真 false 假 8 2 1常量 2 1 4字符常量字符型常量是由一对单引号 括起来的单个字符 采用Unicode编码 在内存中占2个字节共16位例 a b 对于非打印字符 采用转义符创建字符转义码例 t r n 9 2 1常量 2 1 5字符串常量字符串数据类型是用一对双引号 括起来的字符序列字符串数据实际上是由String类所实现例 HelloWorld 123 10 2 2变量 Java是强类型语言 变量都必须有一个数据类型 变量声明格式如下类型变量名 11 2 2变量 2 2 1变量的命名必须是一个合法的标识符 不能是一个关键字或者保留字在同一个作用域中必须是惟一的Java语言规定标识符由字母 下划线 美元符 和数字组成 且第一个字符不能是数字标识符大小写敏感 即区分大小写例 identifieruserNameuser name sys varl change 12 2 2变量 2 2 1变量的命名 关键字 访问控制 private私有的protected受保护的public公共的 类 方法和变量修饰符abstract声明抽象class类extends扩允 继承final终极 不可改变的implements实现interface接口native本地new新 创建static静态strictfp严格 精准synchronized线程 同步transient短暂volatile易失 错误处理catch处理异常finally有没有异常都执行throw抛出一个异常对象throws声明一个异常可能被抛出try捕获异常 13 2 2变量 2 2 1变量的命名 关键字 程序控制语句break跳出循环continue继续return返回do运行while循环if如果else反之for循环instanceof实例switch开关case返回开关里的结果default默认 基本类型boolean布尔型byte字节型char字符型double双精度 float浮点int整型long长整型short短整型null空true真false假 14 2 2变量 2 2 1变量的命名 关键字包相关import引入package包变量引用super父类 超类this本类void无返回值 15 2 2变量 2 2 2变量初始化变量在使用之前必须初始化变量初始化的方式有两种 声明的时候初始化先声明 后初始化例 intx 5 y y x 3 16 2 2变量 2 2 2变量初始化例 classlesson2 publicstaticvoidmain Stringargs intx y y x 3 System out println hello world 17 2 2变量 2 2 3final变量final变量的数值在初始化之后不能改变类似其他语言中的常量例 finaldoubleTOTAL 5 6389 18 2 3Java基本数据类型及相互转换 Java语言的数据类型 19 2 3Java基本数据类型及相互转换 2 3 1整型 20 2 3Java基本数据类型及相互转换 2 3 1整型例 inta byteb shortc longd inte 056 21 2 3Java基本数据类型及相互转换 2 3 2实型 22 2 3Java基本数据类型及相互转换 2 3 2实型浮点数据应用举例 floatfloat1 doubledouble1 floatfloat2 1 5F floatfloat3 1 23456789f 23 2 3Java基本数据类型及相互转换 2 3 3字符型Java采用Unicode编码表示字符数据例 charchar1 char2 charchar3 A charchar4 n char5 t 24 2 3Java基本数据类型及相互转换 2 3 4布尔型Java用 并且只能用 true和false表示真和假例 booleanboolean1 booleanboolean2 true 25 2 3Java基本数据类型及相互转换 2 3 5基本数据类型的相互转换 扩展转换byte short int long float doublechar从一种整数类型到另一种整数类型 或者从float到double的转换不损失任何信息从整数类型向float或double转换 会损失精度窄化转换double float long int short char byte窄化转换可能会丢失信息 26 2 3Java基本数据类型及相互转换 2 3 5基本数据类型的相互转换扩展转换自动转换窄化转换强制转换例 inty int 12L doublez 7 8f 27 2 4运算符与表达式 一元运算符只有一个运算对象的运算符称为一元运算符格式 operatorop 前缀运算符例 i opoperator 后缀运算符例 i 二元运算符需要两个运算对象的运算符号称为二元运算符格式 op1operatorop2 中缀运算符例 a b 三元运算符三元运算符需要3个运算对象格式 op1 op2 op3 中缀运算符例 a b 1 0 28 2 4运算符与表达式 2 4 1算术运算符一元运算符 29 2 4运算符与表达式 2 4 1算术运算符例 bytei 1 bytek i 30 2 4运算符与表达式 2 4 1算术运算符二元运算符 31 2 4运算符与表达式 2 4 1算术运算符例 inti 10 longj 20 intk i j shorti 10 shortj 20 shortk i j inti 10 doublej 20 0 intk i j 32 2 4运算符与表达式 2 4 1算术运算符二元数字提升 33 2 4运算符与表达式 2 4 1算术运算符二元数字提升如果任何一个操作数是double类型 则另一个转换为double类型 否则 如果任何一个操作数是float类型 则另一转换为float类型 否则 如果任何一个操作数是long类型 则另一个转换long类型 否则 两个操作数都会被转换为int类型 34 2 4运算符与表达式 2 4 2关系与逻辑运算符关系运算符 35 2 4运算符与表达式 2 4 2关系与逻辑运算符逻辑运算符 注 和 元算符采用 短路运算方式 例 inttime 8 time 9 time 19 36 2 4运算符与表达式 2 4 3位运算符位运算符是对操作数以二进制位为单位进行的操作和运算 其结果均为整型量 37 2 4运算符与表达式 2 4 3位运算符例 inti 12 1 i inti 12 2 i inti 12 2 i 38 2 4运算符与表达式 2 4 4赋值运算符 39 2 4运算符与表达式 2 4 5其他运算符 40 2 4运算符与表达式 2 4 6表达式表达式任务有 利用表达式的元素来进行计算 返回计算结果的值 Java语言允许将多个子表达式构造成复合表达式 41 2 5控制语句 Java的程序流程控制执行方式顺序选择循环与C语言 C 类似 42 2 5控制语句 2 5 1分支语句 if语句 语法形式只有if分支 没有else分支if boolean expression statement1 if else语句if boolean expression statement1 else statement2 if else语句的特殊形式if booleanexpression statement1 elseif booleanexpression statement2 elseif booleanexpression statement else statement 43 2 5控制语句 2 5 1分支语句 if语句例 已知一个学生的分数 给出其分数等级 90 100分为 级 80 89分为B级 70 79分为 级 60 69分为D级 0 59分为E级计算每个月的天数 44 2 5控制语句 2 5 1分支语句 switch语句 语法形式 switch switch expression casevalue1 statementsforcase1 break casevalue2 statementsforcase2 break casevalueN statementsforcaseN break default statementsfordefaultcase break 注意问题 switch expression 常量值value1到valueN必须是整形或字符型如果表达式的值和某个case后面的值相同 则从该case之后开始执行 直到break语句为止default是可有可无的 若没有一个常量与表达式的值相同 则从default之后开始执行 45 2 5控制语句 inti 9 switch i case0 System out println zero break case1 System out println one case2 System out println two default System out println default 46 2 5控制语句 2 5 1分支语句 switch语句 if i 1 statementA elseif i 2 statementB elseif i 3 i 4 statementC elseif i 5 statementD else statementF switch i case1 statementA break case2 statementB break case3 case4 statementC break case5 statementD break default statementF 47 2 5控制语句 2 5 2循环语句 for循环 for start exp check exp update exp bodyoftheloop 解释 start exp完成循环变量和其他变量的初始化工作check exp是返回布尔值的条件表达式 用于判断循环是否继续update exp用来修整循环变量 改变循环条件三个表达式之间用分号隔开 48 2 5控制语句 2 5 2循环语句 for循环 例 使用java lang Math类 生成100个0 99之间的随机整数 找出它们之中的最大值和最小值 并统计大于50的整数个数 注 用Math random 可以产生大于0小于1的双精度型数 49 2 5控制语句 打印九九乘数表publicclassMultiTable publicstaticvoidmain String args for inti 1 i 9 i for intj 1 j i j System out print i j i j System out println 一个整数 输出它所有的因数 2 5 2循环语句 for循环 50 2 5控制语句 2 5 2循环语句 while循环 实现 当型 循环 其一般语法格式如下 while check expression bodyoftheloop 解释条件表达式 check expression 的返回值为布尔型循环体可以是单个语句 也可以是复合语句块执行过程先判断check expression的值 为真则执行循环体循环体执行完后再无条件转向条件表达式做计算与判断 当计算出条件表达式的值为假时 跳过循环体执行while语句后面的语句 若为真 则继续执行循环 51 2 5控制语句 2 5 2循环语句 while循环 循环接受并输出从键盘输入的整数 直到输入的整数为 1为止Scanners newScanner System in inti s nextInt while i 1 System out println 输入的整数是 i i s nextInt 52 2 5控制语句 2 5 2循环语句 while循环 计算存款收益 假设银行中存款10000元 按11 25 的利率 一年后连本带利将变为11125元 你若将此款继续存入银行 试问多长时间就会连本带利翻一番 53 2 5控制语句 2 5 2循环语句 do while循环 一般语法结构如下do bodyoftheloop while check expression 首先无条件的执行一遍循环体 再来判断条件表达式的值 若表达式的值为真 则再运行循环体 否则跳出do while循环 执行下面的语句特点 它的循环体至少要执行一次 54 2 5控制语句 2 5 4跳转语句 break 功能跳出循环 不再执行剩余部分适用场合在switch结构中 用来终止switch语句的执行在for循环及while循环结构中 用于终止break语句所在的最内层循环 与标号一同使用时 将跳出标号所标识的循环也可用在代码块中 用于跳出它所指定的块 55 2 5控制语句 2 5 4跳转语句 breakbreak与label一同使用举例publicclassExamp publicstaticvoidmain String args outer for inti 1 ii break if i 6 breakouter System out print i j i j System out println 56 2 5控制语句 2 5 4控制语句 continue continue语句必须用于循环结构中停止本次迭代 回到循环起始处 开始下一次迭代过程有两种使用格式不带标号的continue语句终止当前这一轮的循环 跳出本轮循环剩余的语句 直接进入当前循环的下一轮带标号的continue语句使程序的流程直接转入标号标明的循环层次 57 2 5控制语句 2 5 4控制语句 continue带标号的continue语句格式如下continuelabel 标号label应该定义在程序中某一循环语句前面 用来标志这个循环结构 58 2 5控制语句 2 5 4控制语句 continue九九乘法表用下面的程序来实现publicclassExamp publicstaticvoidmain Stringargs outer for inti 1 i 10 i inner for intj 1 j 10 j if i j System out println continueouter System out print i j i j 59 2 6数组 数组由同一类型的一连串对象或者基本数据组成数组是对象每个数组有一个由publicfinal修饰的成员变量 length数组中的变量被称作数组的元素通过数组名字和非负整数下标值引用数组元素 60 2 6数组 2 6 1一维数组 声明 Declaration 声明数组时无需指明数组元素的个数 也不为数组元素分配内存空间不能直接使用 必须经过初始化分配内存后才能使用Type arrayName 例如 int intArray String stringArray TypearrayName 例如 intintArray StringstringArray 61 2 6数组 2 6 1一维数组 创建用关键字new来创建数组基本类型数组的元素都是基本类型的变量引用类型数组的元素都是对象的引用arryName newType number 例如 int ai ai newint 1

温馨提示

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

评论

0/150

提交评论