




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
面向对象程序设计 Java 张聚礼 副教授 系统分析师 兰州理工大学计通学院 第3章 Java基本程序设计 2 主要内容: n介绍Java 的程序结构 n基本数据类型 nJava 语言中的结构化部分 3 3.1 基本知识 Java 语言采用unicode字符集, 含有65535个字符,所以字母包括 下面几种 : nA-Z na-z n汉字 n日文片假名 n平假名 n朝鲜文 4 Unicode码演示程序 运行结果如右图: Unicode.java 5 标识符 n标识符由字母、下划线、美元符号和数字组 成,且第一个符号不能为数字。 n标识符可用作:类名、变量名、方法名、数 组名、文件名等。 n例如:Hello、$1234、程序名、www_123 6 关键字 nJava语言中已经被赋予特定意义的一些单词 如图所示: 7 注释 n1. / 注释内容由/一直到此行结束 n2. /*和*/ 定义一个注释块 n3. /*开始,*/结束 这种注释方法可用来自动产生文档doc,这 种注释方式是Java特有的 8 一个有基本注释的小程序 /*这是一个Java的小例子*/ public class Hello /定义一个类 public static void main(String args) System.out.println(“你好!”); /输出 9 3.2 基本数据类型 Java中数据类型分为四种: n基本数据类型(primitive type) n数组类型(array type) n类(class type) n接口类型(interface type) 任何常量和变量都是上述四种数据类型之一 。 10 基本数据类型一 n布尔型 只有两个值true(真)和false(假) 一般用于逻辑测试 一个布尔型变量的默认初始值为false n1.布尔常量:true、false n2.布尔变量的定义: boolean x; boolean x,y,tom; 定义的同时可赋值: boolean x=true,tom=false; 11 基本数据类型二 n字符类型 n字符常量 字符常量足用单引号括起来的一个字符 n字符变量 字符型变量的类型为char,它在机器中占两个字节 ,16位,其范围为065535 n变量定义: char q; char c,type,cat; 定义同时可赋值: char c=a,type,cat; 12 基本定义类型三 n整数类型 n1.整数常量:123,6000(十进制数),077( 八进制数),0x3ABC,0xab12(十六进制数 ) n2.整数变量定义 int x; int tom_12,jiafei,年龄 定义同时可赋值: int tom_12=100,jiafei,年龄20; 13 基本定义类型四 n1.浮点常量 float型 常量:12.23f, 32.00F, 2e40f double 型常量:12.23d, 32.00D, 123.0,6e- 120 Java提供的几个特殊实常数 如下表: 14 基本定义类型四(续) n2.浮点变量 变量的定义: float x; float x1,x2,x3; 定义时赋初值: float x1=12.23f,x2=32.00f,x3; 变量定义: double d; double d1,d2,d3; 定义时可以赋初值: double d1=1223.f,d2=32.00d,d3; 浮点数的默认初始值为0.0,当然,局部变量除外。 15 Java的基本数据类型 常数测试程序:ConstantTest.java 16 3.3 基本数据类型转换 n整型、实型、字符型数据混合运算时,从低 级到高级的优先关系如下: n这些类型按精度从低到高排列了顺序: byte short int long float double 17 低级数据向高级数据的自动转换规则 18 自动类型转换 n类型转换程序如下:Promotion.java n运行结果如右图: 19 强制类型转换 n当把级别高的变量的值赋给级别低的变量时 ,必须使用显示类型转换运算 n当把一个整数赋值给一个byte,short,int 或long类型变量时,不可以超出这些变量的 取值范围,否则必须进行类型转换运算 n例如int x=(int)34.89; long y=(long)56.98f byte a=(byte)128 byte b=(byte)(-129); 20 强制转换导致精度损失程序 PrecisionLost.java n运行结果如右图所示 : 21 3.4 Java类库中对简单类型数据的类包 装 n简单数据类型包装类层次结 构 22 3.5 表达式 n表达式是由变量、常量、对象、方法调用和操作符 组成的式子。 n例: a+b*c/2-max(x,y) n表达式的值就是对它运算后所得的结果。 n若 a=4,b=5,c=6,x=7,y=9,则上述表达式的结果为: 10 23 Java运算符 之一: n赋值运算 其格式为: 变量或对象=表达式; Java中的扩展赋值运算符及等价的表达式 如下 : 24 Java运算符之二: n算术运算符 n只有整数类型( int long short)的数据才能够进行 取余运算,float 和 double 类型的数据不能 够进行曲取余运算。 n两个整数类型的数据做除 法时,结果是截取商的整 数部分,而小数部分被截 断。如果希望保留小数部 分,则应该对除法运算的 操作数做强制类型转换。 例如1/4的结果是0,而( float)1/4的结果是0.25。 25 Java运算符之三: n关系运算符 n关系运算的结果返回true或false,而不是C、C+中的l或0。 n关系运算符常与布尔逻辑运算符一起使用,作为流控制语句的判断 条件。 26 Java运算符之四: n布尔逻辑运算符 n逻辑运算是针对布尔型数据进行的运算,运算的 结果仍然是布尔型。常用的逻辑运算符如表 : 27 Java运算符之五: n位运算符 n位运算符中,除“”以外,其余均为二元运算符 28 Java运算符之六: n条件运算符 ? : n条件运算符也称三目运算符,其格式为: Expression ? statement1 : statement2; n它的作用是根据第一个运算符(放在?前面,必 须为布尔类型数据)的真假值,来决定整个表达 式的结果值是第二个运算量(放在?后面 :前面) 或者是第三个运算量(放在:后面)。 29 其他运算符 Java还提供其他运算符,主要有如下几种: n分量运算符. n内存分配运算符new n方法调用运算符( ) n下标运算符 n实例运算符instanceof 30 运算符的优先级与结合性 n表达式的类型 n运算符的优先次序 n Java 运算符的优先级与结合性如下表格: AllOps.java 31 3.6 语句 n1.方法调用语句 通过对象可以调用类中的方法产生行为。 n2.表达式语句 一个表达式的末尾加上一个分号就构成了一个语句 n3.复合语句 用把一些语句括起来就构成了一个语句 n4.控制语句 控制语句包括条件分支语句、循环语句和跳转语句 。 n5.packege语句和import语句 package语句和import语句与类、对象有关 ,将在以 后章节中介绍。 32 Java语言控制语句有以下3种: n条件语句 n循环语句 n转移语句 33 3.7 Java的条件语句 Java语言的条件语句有以下3种: n1.if条件语句 FindMax.java 34 2.if的扩充形式 Division.java 35 3.switch语句 nswitch 语句是多分支选 择语句,它的一般语法格 式如下: switch(表达式) case 判断值1:语句块1; break; case 判断值2:语句块2; break ; case 判断值n:语句块n; break ; default : 语句块n+1; GradeLevel.java 36 循环语句 循环语句分为三种: nfor nwhile ndo-while 37 1. for 语句 nfor 语句是Java语言中使用最多、最灵活、最有效 的循环结构。其一般语法格式如下: nfor(表达式1;表达式2;表达式3) 循环体 n先对表达式1进行求值。在整个循环进程中,表达式 1只被执行一次。 n判断表达式2的值,若为true,则重复执行循环体和 表达式3所表示的操作,这个过程一直进行到表达式 2的值为false, 使for 循环终止。 38 例:求1100整数之和。 1-100自然数之和程序运行结果如下: ForSum100.java 39 2while 语句 nwhile循环语句是Java语言的最基本循环结构,它 的一般语法格式如下: nwhile一般格式: while(表达式) 若干语句 nwhile语句的执行过程是先判断条件表达式的值,若 为真,则执行循环体,循环体执行完毕后,再转向 条件表达式进行计算与判断,直到条件表达式的值 为假时,跳过循环体执行while语句后面的语句。 40 例:求100-999之间所有的水仙花数。 求解水仙花数程序运行结果如下: Narcissus.java 41 3. dowhile 语句 n在条件表达式的初始值为假,而循环体至少要执行 一次才能结束循环的情况下,可以考虑用 dowhile 语句实现具有这样特点的循环。它的 一般语法格式如下: do 语句序列 while(表达式) dowhile 语句的特点是:先执行循环体,后判断 条件表达式。无论条件表达式的值为真还是为假, 循环体都至少被执行一次。 IntReverse.java 42 转移语句 n1. continue 语句 continue语句用来结束本次循环,跳过循环体中下 面尚未执行的语句,接着进行终止条件的判断,以 决定是否继续循环。 n2. break 作用:结束整个循环的执行,转到下一语句 n3. return语句 Java的返回语句与Java的方法紧密相关,当程序执 行到此语句时,将立即返回上一级方法。 43 3.8 package语句 n用于指明源文件定义的类所在的包 n一般格式: package 包名 n例:package exam; npackage一定是源文件的第一条语句。 44 3.9 import语句 n功能:用于引入所需要的类 nJava提供了60个包,常用的包如下: nJava.applet. 实现Java Applet的类 njava.awt. 抽象窗口工具集,包含了图形、文本、窗 口 GUI类 njava.awt.image. 抽象窗口工具集中的图象处理类 njava.lang. 基本语言类 njava.io. 输入输出类 . 所有实现网络功能的类 njava.until. 有用的数据类型类 njava.awt.peer. 平台无关的GUI工具集界面 45 3.10 数组 n1.声明数组 n格式: 数组元素类型 数组名字 或者: 数组元素类型 数组名字; n二维数组: n 数组元素类型 数组名字 或者: 数组元素类型 数组名字; 46 2.创建数组 n声明数组仅仅是给出了数组名字和元素的数 据类型,要想真正使用数组还必须为他分配 内存空间,即创建数组。在为数组分配内存 空间是必须指明数组的长度,其格式如下: n 数组名字 =new 数组元素的类型数组元素 的个数; 47 二维数组 n日常生活中处理的许多数据,从逻辑上看是由若干 行、若干列组成的。图1给出了一个简单的矩阵。 为适应存放这样一类数据人们设计出了如图2所示 的二维数组这种数据结构。 图1 矩阵 图2 二维数组 48 二维数组的声明 n二维数组声明同样也是为数组命名和指定其数据类型 ,不为数组元素分配内存。二维数组的初始化也有直 接指定初值的方式和用new操作符的方式两种。 n1用new操作符初 始化数组 n2直接指定初值的 方式 二维数组实际上是每个一维数组的元素也是一个一维数组 MultiDimArray.java 49 3.11 字符串String类 nJava没有字符串类型 n用String类来创建一个字符串变量,因此字 符串变量是一个类类型变量,即是一个对象 。 n可以用String类的构造方法: String(字符串常量)来构造字符串 50 字符串常用操作 n串连接(+) n 获取串长度方法(length()) n字符串与数值的转化 n数值转化为字符 n字符串检索 n 获得字符串的子串 n获得对象的字符串表示 n字符串其他方法 51 3.12 StringBuffer类 StringBuffer类提供三种创建方法: npublic StringBuffer(); 创建一个空的 StringBuffer类。 npublic StringBuffer(int length); 创建一个大 小为length的StringBuffer类。 npublic StringBuffer(String str); 按str创建一 个动态可变的StringBuffer类。 StringE
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年土地流转招标合同样本
- 2025建筑外墙保温施工合同模板
- 九年级化学下册 9.1 溶液的形成教学设计1 (新版)新人教版
- 深入理解健康管理师考试结构试题及答案
- 恋爱测试题及答案
- 专利代理人资格考试新方法学习试题及答案
- 专利保护与反盗版的试题及答案
- DB41-T 2627.2-2024 望春玉兰 第2部分:苗木繁育技术规程
- 专利合同的重要性及注意事项的考试试题及答案
- 三年级信息技术上册 第5课 认识键盘教学设计2 辽师大版(三起)
- 汽车发动机构造与维修试题
- 2025-2030中国生物酶制剂行业市场现状供需分析及投资评估规划分析研究报告
- 现代物流校考题目及答案
- 2025年投资专员面试试题及答案
- DB3713-T 255-2022 大棚黄瓜农机农艺融合栽培技术规程
- DB11∕T1103-2024泡沫玻璃板建筑保温工程施工技术规程
- 2025年安徽宣广高速公路有限责任公司招聘笔试参考题库含答案解析
- 浦东开发开放三十年
- 《自行车发展史》课件
- 《为瓷杯子做包装盒》说课稿-2023-2024学年五年级下册数学北京版
- 9.3大气压强(课件)(共39张) 2024-2025学年度人教版物理八年级下册
评论
0/150
提交评论