Java语言程序设计教程.ppt

上传人:max****ui 文档编号:6364415 上传时间:2020-02-24 格式:PPT 页数:44 大小:1.14MB
返回 下载 相关 举报
Java语言程序设计教程.ppt_第1页
第1页 / 共44页
Java语言程序设计教程.ppt_第2页
第2页 / 共44页
Java语言程序设计教程.ppt_第3页
第3页 / 共44页
点击查看更多>>
资源描述
书名 Java语言程序设计教程ISBN 978 7 111 14818 0作者 邱桃荣出版社 机械工业出版社本书配有电子课件 第2章Java语言基础 学习导读 掌握Java语言的基础知识 是正确编写Java程序的前提 也是进一步深入学习Java语言的基础 本章主要介绍编写Java程序必须熟悉的语言基础知识 包括Java语言标识符 保留字 数据类型 运算符 表达式 标准输入输出 流程控制语句以及数组 课程结构 2 1标识符和保留字2 2数据类型2 3运算符与表达式2 4Java的常用的输入与输出2 5Java的流程控制语句2 6数组 2 1标识符和保留字 1 标识符标识符用于标识变量 函数 类和对象的名称 一来说明它们的存在 二来方便地使用它 标识符由字母 数字 下划线和 构成 第一个字符不能是数字字符 保留字不能作为用户自定义的标识符 2 1标识符和保留字 2 保留字保留字或关键字是指那些具有专门的意义和用途的 由系统定义的标识符 const和goto保留字没有任何意义 表2 1常见保留字 2 2数据类型 Java的数据类型可分为基本数据类型 或叫简单数据类型 和复合数据类型 基本数据类型是指由Java语言本身定义的数据类型 复合数据类型是由用户根据需要自己定义并实现其运算的数据类型 表2 2Java定义的所有基本数据类型 2 2数据类型 1 整数类型整数类型包括整型常量和整型变量 整型常量整型常量有int和long两种类型 其中long型整型常量要在数字后面加大写的字母L或小写的字母l 具体的整型常量有三种表示形式 1 十进制整型常量是由0 9 字符组成 并以 号开头的数字串 如987 654 2 八进制整型常量是由0 7 字符组成 并以 号加0开头的数字串 如023 相当于十进制的19 043 相当于十进制的 35 3 十六进制整型常量是由0 9 A F a f x或X字符组成 并以 号加0 x或0X开头的数字串 如0 x12 0X6A 整型变量整型变量的类型有四种 byte short int和long 2 2数据类型 2 浮点数据类型浮点数据类型就是常说的实型数据 也包括实型常量和实型变量实型常量实型常量有float和double两种数据类型 其中要表示float类型常量必须在数字后加上字母F或f 具体有两种表示形式 1 十进制数表示 由数字 小数点和正负号组成 且必须有小数点 如 0 12 35 67 2 科学计数法表示 由数字 小数点 正负号和字母E e组成 且在E e之前必须有数字 如1 2e3 45E8 实型变量实型变量的数据类型有double和float两种 double称为双精度类型 float称为单精度类型 双精度类型比单精度类型的数据具有更高的精度和更大的表示范围 但单精度数据比双精度数据所占内存空间少且在处理器进行处理的速度也比双精度数据类型快一些 2 2数据类型 3 字符型数据字符型数据也包括字符型常量和字符型变量 字符型常量是用单引号括起来的一个字符 如 A 9 Java语言中的字符型数据是使用16位Unicode 全球文字共享编码 方式 由于采用Unicode编码方案 使得Java在处理多语种的能力方面得到大大提高 从而为Java程序在基于不同语种之间实现平滑移植铺平了道路 与C C 相同 Java语言也提供转义符号 以 开头 将其后面的符号转变为其他的含义 如 ddd表示1到3位八进制表示的数据 uxxxx表示1到4位十六进制表示的数据 表示单引号 另外 Java中字符型数据虽然不能用作整型 但可以把它当作整型数据来操作 2 2数据类型 4 布尔型数据布尔型数据只有true和false两个数据值 并且它们不对应任何整型值 2 3运算符与表达式 1 运算符运算符按照参与运算的操作数的个数可分为 单目运算符 双目运算符和三目运算符 除进行运算外 运算符也返回值 这个值和类型取决于运算符和操作数的类型 Java运算符主要包括以下几类 算术运算符 关系运算符 条件运算符 位运算符 逻辑运算符以及赋值运算符 2 3运算符与表达式 算术运算符算术运算符完成算术运算 包括一元算术运算符 和二元算术运算符 2 3运算符与表达式 关系运算符关系运算符是比较两个数据大小关系的运算 常用的关系运算符是 如果一个关系运算表达式 其运算结果是 真 则表明该表达式所设定的大小关系成立 否则若运算结果为 假 则说明了该表达式所设定的大小关系不成立 2 3运算符与表达式 逻辑运算符逻辑运算和关系运算的关系十分密切 关系运算是运算结果为布尔型量的运算 而逻辑运算是操作数和运算结果都是布尔型量的运算 表2 4逻辑运算符 2 3运算符与表达式 位运算符位运算符是对操作数以二进制位进行运算 运算的结果为整型数据 表2 5位运算符 2 3运算符与表达式 赋值运算符赋值运算符有 和符合赋值运算符 符合赋值运算符是先对某表达式进行某种运算后 把运算结果赋给一个变量 注意 当变量的数据类型与表达式计算结果的数据类型不一致时 如果变量数据类型级别高 则结果数据类型被自动转化为变量数据类型 然后赋给变量 否则 需要使用强制类型转换运算符将结果转化为变量数据类型 2 3运算符与表达式 条件运算符条件运算符为三元运算符 其格式为 expression Statement1 statement2 功能是 若expression为真 则执行语句statement1 否则执行语句ststement2 例如 c a b a b 注意 statement1与statement2要有相同返回结果 且不能是void返回类型 2 3运算符与表达式 2 表达式表达式由运算符 操作数和方法调用 按照语言的语法规则构造而成的符号序列 最简单的表达式是一个常量或一个变量 表达式的任务有两项 执行指定的运算和返回运算结果 一个运算符的使用就是一个表达式 2 3运算符与表达式 3 运算符的优先级和结合性使用表达式要注意 运算符的功能 运算符的优先级 运算符的结合性 对操作数的要求 包括个数要求 类型要求和值要求 如 或 都要求右边的操作数不为零 表达式值的类型 对表达式的运算是按运算符的优先顺序从高到低进行的 同级的运算符按照运算符的结合性进行运算 说明 1 所有单目运算符处于同一级 它们比双目运算符的优先级高 2 在双目运算符中 算术运算符高于关系运算符 关系运算符高于位操作和逻辑运算符 3 条件运算符高于赋值运算符 它们优先级别最低 4 除了单目运算符 条件运算符和赋值运算符的结合性为从右到左外 其他均为从左到右 2 4Java的常用的输入与输出 1 Java的标准输入与输出Java语言中的输入输出涉及流的概念 借助流类实现输入输出 在Java程序中有一大部分是采用标准输入输出 标准输入是键盘的输入 标准输出是终端屏幕 标准错误输出也指向屏幕 如果有必要 它也可以指向另一个文件以便和正常输出区分 通过系统类System达到访问标准输入输出的功能 System类管理标准输入输出流和错误流 有以下三个对象 1 System out 把输出送到默认的显示 通常是显示器 2 System in 从标准输入获取输入 通常是键盘 3 System err 把错误信息送到默认的显示 2 4Java的常用的输入与输出 2 Java的图形界面输入与输出Java语言可以实现图形界面效果 Java语言中提供了一个类javax swing JOptionPane 该类提供了弹出一个标准对话框的功能 通过标准对话框来提示用户 往往可以利用它这个性质来实现具有对话框显示效果的数据输入和输出 JOptionPane类实现输入和输出对话框的常用方法有 showInputDialog 用于数据输入 showMessageDialog 提示用户某些信息 可以由用户定义 2 5Java的流程控制语句 流程控制语句是程序中基本且关键的部分 它用来控制程序中语句执行顺序 在传统的结构化程序设计中最主要的控制结构有顺序 分支和循环三种基本结构 虽然Java语言是面向对象的语言 但是在语句块内部 仍然需要借助基本流程结构来组织语句完成相应的逻辑功能 2 5Java的流程控制语句 1 分支语句分支结构有两路或多路分支 它们均是根据条件表达式的真假来选择语句的走向 1 if else分支语句格式 if expression statements1 else statements2 2 5Java的流程控制语句 2 嵌套if else分支语句格式 if expression1 statements1 elseif expression2 statements2 elseif expressionN statementsN else statements 2 5Java的流程控制语句 3 switch分支结构格式 switch expression casevalue1 statements1 break casevalue2 statements2 break casevalueN statementsN break default statements break 2 5Java的流程控制语句 使用switch语句要注意 expression必须是int byte char和short类型之一 value必须是常量 且所有case子句中的value是不相同的 default语句是可选的 当存在default语句 而无与expression匹配的value时 就执行default语句 当无default语句 且又无与expression匹配的value时 就跳出switch语句 break用于执行完一个case子句后跳出switch语句 在某些情况下 允许位置上连续的多个不同的case子句执行相同的操作 所以只在该组的最后一个case字句中使用break语句 2 5Java的流程控制语句 2 循环语句循环结构是指在满足一定条件下 反复执行某一段语句 Java中有四种循环语句 while语句 do while语句 for语句 for each语句 2 5Java的流程控制语句 1 for循环结构格式 for initexpr1 testexpr2 incrementexpr3 statements 2 for each语句格式 for 数据类型变量 数组名 作用 在JDK5 0新增了一个增强for形式的循环语句 它可以实现对数组顺序访问而不依赖于数组的下标和迭代器 就是不通过数组的下标达到对指定数据类型数组的所有的元素的访问 2 5Java的流程控制语句 3 while循环结构格式 while expression statements 作用 先判断条件表达式expression是否为真 若是真 则执行循环体 循环体执行完后再转向条件表达式继续做计算和判断 当条件表达式为假时 则跳出while语句 2 5Java的流程控制语句 3 do while循环结构格式 do statements while expression 作用 与while语句很相似 不同的是do while语句是先执行循环体一次 再判断条件表达式expression是否为真 若为真 则继续执行循环体 否则跳出do while语句 2 5Java的流程控制语句 3 一般循环控制 1 break语句格式 break label 作用 使程序从一个语句块内部跳转出来 带标号的break语句就从当前这个语句块跳出进入标号对应的语句中 不带标号的break语句是从它所在的switch分支或最内层的循环体中跳转出来 执行分支或循环体后面的语句 2 continue语句格式 continue label 作用 对不带标号的continue语句用来结束本次循环 跳过循环体中未执行的语句 调整循环条件后 继续判断条件 以决定是否继续循环 对带标号的continue语句与带标号的break语句一样 3 return格式 returnexpr 作用 使流程从方法调用中返回 表达式的值就是调用方法的返回值 2 6数组 在Java语言中 数组是属于复合数据类型 是由使用者自己来定义的 它实际上是一种隐含的 数组类 的实例 数组名就是该实例的一个引用 同样数组元素是对数组元素类实例的引用 2 6数组 1 数组的声明Java的数组声明可以采用与C语言类似的形式 格式 一维数组 arrayTypearrayName 二维数组 arrayTypearrayName Java的数组声明语句没有指明数组大小 这是因为Java声明数组时并不一定需要为数组分配存储单元 Java中数组的存储单元的分配是在创建数组时完成的 2 6数组 2 数组的创建 1 一维数组的创建分成 数组元素为简单数据类型数组元素为复合数据类型 2 6数组 数组元素为简单数据类型 采用静态初始化 对于数据元素类型是基本数据类型的数组 声明数据与创建数组空间结合在一起 用一条语句完成 并同时给出各数组元素的初始值 格式为 arrayTypearrayName element1 element2 或arrayType arrayName element1 element2 2 6数组 采用动态初始化 动态初始化的操作是由new运算符完成的 例如 对前面所声明的数组 可以用下面的形式创建一个数组count newint 10 或者count newint 10 事实上数组的声明与创建可以合并用一条语句来实现 如 intcount newint 10 或者 int count newint 10 2 6数组 数组元素为复合数据类型对于数组元素为复合数据类型的一维数组的空间创建按以下两个步骤进行 为数组元素开辟引用空间 格式 arrayName newarrayType arraySize 为每个数组元素开辟存储空间 格式 arrayName i newarrayType paramList 其中i 0 arraySize 1 2 6数组 2 二维数组的创建分成 数组元素为简单数据类型数组元素为复合数据类型 2 6数组 数组元素为简单数据类型 采用静态初始化 同一维数组一样 声明数据与创建数组空间结合在一起 用一条语句完成 并同时给出各数组元素的初始值 例如 int smallPrime 2 3 5 7 11 13 17 由于二维数组看作是数组的数组 数组空间不是连续分配的 所以每一维的大小可以不一样 如上例所示 采用动态初始化 也同一维数组一样 通过new操作符进行空间分配 有两种方式 直接为每一维分配空间 格式为 arrayName newarrayType arraySize1 arraySize2 2 6数组 数组元素为复合数据类型采用上述动态分配中的第二种方式进行数组的创建 即首先为数组的最高维分配引用空间 然后依次为低维分配引用空间 还要为每个数组元素分配存储空间 例如 Stringstr newString 2 最高维的引用空间Str 0 newString 2 低维的引用空间Str 1 newString 2 低维的引用空间Str 0 0 newString Happy 数组元素的存储空间及其数据Str 0 1 newString Birthday 数组元素的存储空间及其数据Str 1 0 newString to 数组元素的存储空间及其数据Str 1 1 newString You 数组元素的存储空间及其数据 标识符用于标识变量 函数 类和对象的名称 它是以字母或下划线或美元符号开头的字母数字串 Java中的标识符区分大小写 Java的数据类型可分为基本数据类型 或叫简单数据类型 和复合数据类型 基本数据类型是指由Java语言中定义的数据类型 有8种基本数据类型 复合数据类型是由用户根据需要自己定义并实现其运算的数据类型 有3种复合数据类型 本章小结 运算符按照参与运算的操作数的个数可分为 单目运算符 双目运算符和三目运算符 除进行运算外 运算符也返回值 这个值和类型取决于运算符和操作数的类型 Java运算符主要包括以下几类 算术运算符 关系运算符 条件运算符 位运算符 逻辑运算符以及赋值运算符 表达式由运算符 操作数和方法调用 按照语言的语法规则构造而成的符号序列 最简单的表达式是一个常量或一个变量 表达式的任务有两项 执行指定的运算和返回运算结果 Java通过系统类System达到访问标准输入输出的功能 System类管理标准输入输出流和错误流 有以下三个对象 System out System in System err 这三个对象在main方法被执行时就自动生成 流程控制语句是程序中基本和关键的部分 它用来控制程序中语句执行顺序 在传统的结构化程序设计中最主要的控制结构有顺序 分支 if if else switch 和循环 for while do while 三种基本结构 此外 从JDK5 0以后新增了一个增强型的for循环 可以实现对数组的顺序访问 数组是属于复合数据类型 是由使用者自己来定义的 它实际上是一种隐含的 数组类 的实例 数组名就是该实例的一个引用 同样数组元素是对数组元素类实例的引用 对数组的使用一般包括三个步骤 声明数组 创建数组和使用数组
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 课件教案


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

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


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