《java语言基础》PPT课件.ppt

上传人:sh****n 文档编号:8632286 上传时间:2020-03-30 格式:PPT 页数:73 大小:376.05KB
返回 下载 相关 举报
《java语言基础》PPT课件.ppt_第1页
第1页 / 共73页
《java语言基础》PPT课件.ppt_第2页
第2页 / 共73页
《java语言基础》PPT课件.ppt_第3页
第3页 / 共73页
点击查看更多>>
资源描述
1 Java语言基础 本章是Java语言的基础 主要学习的内容有 Java的关键字 标识符及各种数据类型 Java的常量 变量及各种运算符 2 回顾 了解Java语言的发展历史了解Java语言的特点了解Java语言与C 语言的不同之处掌握安装并设置Java开发平台掌握Java程序的组成结构掌握使用集成开发环境编写Java程序的方法 3 目标 掌握标识符的定义规则了解常用的保留字和分隔符掌握各种简单数据类型的使用掌握运算符和表达式的使用 4 2 1 1Java标识符 用来表示变量 方法或类等的名字 定义的规则如下 只能使用字母 数字 下划线和美元符 只能以字母 下划线和美元符开头 严格区分大小写 没有长度限制 不能与保留字同名 5 2 1 1Java标识符 下面哪些是合法的Java标识符 Programe java 12Programe java ProgrameJava1 变量1 Str Programe Java1 Programe2 1 Programe21 var1 myVar 合法标识符 Programe java Programe Java1 Programe2 1 变量1 Str var1 myVar 非法标识符 12Programe java ProgrameJava1 Programe21等 6 2 1 1Java字符集与C语言或其他传统的高级程序设计语言不同 Java语言的基本符号采用Unicode字符集 而不是ASCII字符集 以方便支持多语种 7 在Unicode字符集中 字母不仅仅限于英语 还包括其他语言的字符 包括汉字 Unicode字符集采用16位编码 一个字符在内存中占用两个字节 虽然现有的多数程序使用ASCII编码 但在运行前都被转换为Unicode字符 8 2 1 2保留字 9 2 1 3分隔符 Seprators 有 空格 圆括号 花括号 分号等 每条语句无论一行还是多行都以分号结束 块 Block 是包含在 里面的多条语句 块可以嵌套 空白插在代码的元素中间 由一个或多个空格组成 也可以由一个或多个tab空格组成多个空行 10 2 1 4注释 Comments 1 单行 2 多行 3 文档注释 单行注释 以换行符为结束 多行注释 注释内容较多 使用javadoc工具从源代码和文档注释中将信息取出 然后转换为HTML文件 11 2 2 1数据类型划分 12 Java语言 C语言的数据类型比较 对C语言的数据类型作了一定的简化 弃用了结构体 枚举类型 共用体 指针等复杂数据类型增加布尔类型Java语言在对数据的类型检查方面总的来说要比C语言更严格 13 2 2 2常量和变量 1 常量有字面 Literal 常量和符号常量两种 符号常量定义的一般格式如下 例如 finaldoublePI 3 141593 finalintCOUNT 1000 2 变量定义的一般格式如下 例如 doublex 1 2345 其数值意义如同字面所表示的一样 用Java标识符表示的一个常量 用于标识数据的存储单元 各种类型的变量创建后都有默认值 14 2 3 1整型数据2 1 1 整型常量 1 整型多为十进制数形式 也可为八进制或十六进制形式 首位为 0 表示八进制的数值 首位为 0 x 表示16进制的数值 2 Java整型数都为带符号数 3 整型缺省为int型 若为长整型需在数据后加字母l或L 15 2 3 1整型数据2 2 2 整型变量按照长度分为 byte short int long int类型常用 基本满足需要 再大的整数long byte类型范围很小 short类型很少用 限制数据的存储为先高字节 后低字节 例如 byteb shorts inti longl 16 表2 1Java整型数据字节数和表示范围 17 2 3 2实型数据2 1 1 实型常量 1 用十进制数形式表示 由数字和小数点组成 例如 3 25 2 用科学计数法形式表示 例如 123E 3 3 数后加f或F为float 加d或D为double 没有后缀修饰的则缺省为double类型 18 2 3 2实型数据2 2 2 实型变量实型变量按长度分为 float和double 双精度浮点型double比单精度浮点型float的精度更高 表示数据的范围更大 例如 float doubled 19 表2 2实型数据字节数及范围数据 20 注意 实型常量缺省为double型 如果希望声明某个实型常量为float型 则要在数字后加f或F 如12 3F 它在机器中占4个字节 精度较低 21 实型变量的定义与C语言类似 如 doubled 2 3 指定变量d为double型floatf 1 23 指定变量d为 型 22 2 3 3字符型数据2 1 字符常量是用单引号括起来的一个字符 如 J Java中有以反斜杠 开头的字符 反斜杠将其后面的字符转变为另外的含义 称为转义字符 23 2 3 3字符型数据2 2 Java中的字符型数据是16位的Unicode字符 汉字和英文字母占的内存空间相同 JAVA你好 共12个字节 变量的定义如下 charch c 24 表2 3Java中的转义字符 25 下面是字符型变量的定义的例子 charc a 指定变量c为char型 且赋初值为 a 与C语言不同 Java语言不允许将字符型变量用作整型 因为Java不提供无符号整数类型 但可与整型进行混合运算 例如 inti A 是非法的 而下面的语句是合法的 inti 3 i i 0 26 2 3 4字符串数据 字符串常量是使用双引号括起来的字符序列 注意 最后字符不是 0 例如 Let slearnJava 字符串变量作为对象来处理 通过String和StringBuffer类的构造方法来定义 Strings newString 27 2 3 5布尔型数据 布尔型常量值只有 true和false 布尔型变量为boolean类型 值为true和false 例如 booleanb true 28 2 4 1算术运算符 包括 等 前缀 变量首先进行操作在自身进行加 例如 inta 2 intb a a 3 b 2 后缀 变量自身首先加然后再进行操作 例如 inta 2 intb a a 3 b 3 29 算术运算 传统算术运算 30 Java语言中算术运算符的优先级和结合性与C语言相同 Java语言对运算符 的功能进行了扩展 使它能够进行字符串的连接 如 abc de 得到串 abcde 另外 与C语言不同 取模运算符 操作数可以为浮点数 如37 2 10 7 2 其他需要注意的几点与C语言相同 31 1 除法运算 当两个运算对象均为整型数据时 作整除运算 2 i 与 i的区别 i 在使用i之后 使i的值加1 因此执行完i 后 整个表达式的值为原来i的值 而i的值加1 i在使用i之前 使i的值加1 因此执行完 i后 整个表达式和i的值均为i原来的值加1 i 与 i的运算方式与 运算符相似 运算符只能对变量进行操作 32 程序2 2 算术运算符的使用 publicclassArithmaticOp publicstaticvoidmain Stringargs inta 5 4 intb a 2 intc b 4 intd b c inte d intf e 4 doubleg 18 4 doubleh g 4 33 inti 3 intj i intk i System out println a a System out println b b System out println c c System out println d d System out println e e System out println f f System out println g g 34 System out println h h System out println i i System out println j j System out println k k 35 程序2 2 算术运算符的使用 publicclassArithmaticOp publicstaticvoidmain Stringargs inta 5 4 a 9intb a 2 b 18intc b 4 c 4intd b c d 14inte d e 14intf e 4 f 2doubleg 18 4 doubleh g 4 h 2 4 36 inti 3 intj i i 4 j 3intk i i 5 k 5System out println a a System out println b b System out println c c System out println d d System out println e e System out println f f System out println g g 37 System out println h h System out println i i System out println j j System out println k k 38 使用VisualJ 6 0编译运行其结果为 a 9b 18c 4d 14e 14f 2g 18 4h 2 3999999999999986i 5j 3k 5 39 2 4 2关系运算符 完成操作数的比较运算 结果为布尔类型值 包括 instanceof 优先级低于算术运算符 执行顺序自作向右 40 2 4 2关系运算符关系运算进行比较运算 通过两个值的比较 得到一个boolean 逻辑 型的比较的结果 其值为 true 或 false 在Java语言中 true 或 false 不能用 0 或 1 来表示 而且这两个逻辑值必须用小写 true 与 false Java语言共有7种关系运算符如表2 6示 表2 6关系运算符 41 2 4 3布尔逻辑运算符 包括 注意区别简洁与 或 和非简洁与 或 如果其前面的表达式为假 则不再计算其后面的表达式 不管其前面的表达式为什么 都计算其后面表达式 42 booleanb1 b2 b3 b1 false b2 false b3 b1由于b1的值为假 则表达式b1 b2 true 右边部分b2 true无需计算即可得到结果 因此该部分不计算 b2的值不改变 43 如果将该表达式中的条件与换为逻辑与 改成 booleanb1 b2 b3 b1 false b2 false b3 b1则不管前面b1的值为什么 b2 true都计算 该程序片断运行结束后 b2的值为true 条件或 与逻辑或 的区别与此类似 44 程序 关系运算符与逻辑运算符的使用 publicclassRelationLogicOp publicstaticvoidmain Stringargs inta 25 b 30 booleand a b System out println a b d inte 3 if e 0 45 if f 0 46 运行结果为 a b truea e 8f 0d true 47 2 4 3逻辑运算符Java语言中 提供了6种逻辑运算符 逻辑运算符的运算结果为逻辑型 true 或 false 在表2 7 列出了各种逻辑运算符及其说明 表2 7逻辑运算符 逻辑运算表达式的执行顺序为自左至右 逻辑非运算符 的优先级高于其它逻辑运算符 48 2 4运算符 2 4 5位运算符Java语言中的位运算符如表2 8中所示 表2 8位运算符 49 2 4运算符 例计算表达式的值设shorta 0 x2F34 shortb 0 xE5081 1 求a b 2 求a b 3 求a b 4 求a 3 6 求b 3 50 计算时先把a和b化成16位的二进制的数 a 0010111100110100 b 1110010100001000然后进行按位运算后 再换算成16进制的数 1 2 换算成16进制 结果为0 x2500换算成16进制 结果为0 xEF3C 51 2 4运算符 3 换算成16进制 结果为0 xCA3C 4 左移n位相当于原数乘以2的n次幂 并且左移比乘法快 所以有时用左移代替乘2的n次幂的运算 换算成16进制 结果为0 x79A0 5 换算成16进制 结果为0 xFCA1 6 换算成16进制 结果为0 x1CA1 如果两个不同长度的数值做位运算 系统将二者的右端 即低位 对齐 同时将两个操作数中长度较短者的高位用0补齐 52 2 4 5赋值运算符 包括 例如 inta b c 3 53 2 4 6条件运算符 为 一般形式为 表达式1 表达式2 表达式3 例如 doublesalary xintanceofteacher 2000 200 54 2 5表达式 由操作数和运算符按照一定的语法格式组成表达式 例如 a b c d 55 2 5 1常用数值计算方法在Java的Math类中包含了一些数值常量 如E和PI 以及一些基本的静态数值计算方法 如指数 对数 平方根和三角函数等 为用户进行数值计算带来了方便 56 例 Math类中常量和方法的使用 classUseMath publicstaticvoidmain Stringargs doublea 3 0 b 4 0 doublec Math sqrt a a b b System out printIn 直角三角形直角边为6 0和8 0时的斜边长为 c System out printIn 5和 9的较大者是 Math max 5 9 System out printIn 100的绝对值是 Math abs 100 System out printIn 不大于13 4的最小整数是 Math ceil 13 4 System out printIn 不小于13 4的最大整数是 Math floor 13 4 System out printIn sin30度的值是 Math sin 30 0 180 Math PI System out printIn 半径为3 0的圆面积是 Math PI a a 57 类型转换 自动类型转换 低优先级的数据自动会转换为高优先级的数据 低高byte short charintlongfloatdouble强制类型转换 优先级高的数据转换为优先级低的数据 例如 doubled 3 14159d inta int d 58 在使用强制转换时应注意以下问题 表达式必须加括号 单个变量可以不加括号 如把 int x y 写成 int x y则成了把x转换成int型之后再与y相加了 无论是强制转换或是自动转换 都只是为了本次运算的需要而对变量的数据长度进行的临时性转换 而不改变数据说明时对该变量定义的类型 59 例 f型强制转为int型 classzhuanhuan2 publicstaticvoidmain Stringargs floatf 5 75 System out printIn int f f 程序运行的结果为 5 5 7500000 60 例 数值转换溢出实例 classzhuanhuan3 publicstaticvoidmain Stringargs inta floatb 123456 a b System out printIn a 程序运行的结果为 0 61 2 4运算符 2 4 8运算符的优先级和结合性在Java语言中 每个运算符分属于各个优先级 同时 每个运算符具有特定的结合性 有的具有左结合性 即自左至右的结合原则 有的具有右结合性 即自右至左的结合原则 运算符在表达式中的执行顺序为 首先遵循优先级原则 优先级高的运算符先执行 在优先级同级的运算符之间遵守结合性原则 或自左至右 或自右至左 表2 10中给出了各种运算符的功能说明 优先级和结合性 绝大部分在以上各小节已经分别介绍过 需要补充说明的是 除了作为正号运算符与加法运算符之外 还可以起到字符串的链接作用 62 2 4运算符 表2 10Java语言的运算符及其优先级和结合性 63 2 5 Java流程控制 64 一 选择结构控制 Java语句提供了两条基本的分支选择语句if和switch if语句应用在 二选一 的条件下 而switch语句应用在 多选一 的条件下 它们都是对条件表达式进行判断 针对不同的结果 决定转向要执行java语句 65 if语句 if 条件表达式 语句if 条件表达式 语句1else语句2 条件 语句 True False 条件 语句1 True False 语句2 66 Switch语句 switch 表达式 case值1 语句块1 break case值2 语句块2 break case值n 语句块n break default 语句块n 1 67 二 循环结构控制 循环语句的作用是在一定条件下 反复执行一段程序代码 被反复执行的程序称为循环体 Java语句提供的循环语句有 while语句 do while语句和for语句 68 while语句 while 条件表达式 循环体 含义 当循环条件表达式为true时 重复执行循环体 69 do while语句 do 循环体 while 条件表达式 含义 重复执行循环体 直到循环条件表达式为false 70 for语句 for 表达式1 表达式2 表达式3 循环体 表达式1 循环初值 表达式2 返回布尔值的条件表达式 判断循环是否继续 表达式3 修整循环变量 改变循环条件 True 设定初值 条件 修改表达式 False 循环体 71 三 跳转语句 break语句 使程序的流程从一个语句块内部跳转出来 通常在switch和循环语句中使用 如从switch语句的分支中跳出 或从循环体内部跳出 continue语句 只在循环语句中使用 其作用是终止当前这一轮的循环 跳过本轮循环剩余的语句 直接进入下一轮的循环 72 Java举例 跳转程序 publicclassZhiShu publicstaticvoidmain Stringargs inti j k booleanflag for i 2 i 50 i flag true k i 2 for j 2 j k j if i j 0 如果该数可以整除其余数 则不可能是质数flag false break if flag System out print i 73 总结 主要介绍了Java语言的基本语法 首先是标识符的定义规则 四大种 八小种 数据类型 整型 字符型 浮点型 布尔型 各种运算符的使用方法和优先级 表达式的定义和组成 简单的输入输出方法的使用
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


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


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

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


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