




已阅读5页,还剩98页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java程序设计实用教程 第4版 1 Java程序设计实用教程 第4版 第2章Java语言基础 2 1语言成分2 2流程控制语句2 3数组2 4静态方法2 5字符串 掌握Java语言的基本语法成分 注意与C C 不同之处 掌握数组类型和字符串的使用方法 掌握Java语言的方法声明和调用规则 掌握方法参数和返回值的传递规则 重点 数组的引用模型 使用静态方法 引用类型作为方法的参数和返回值 字符串 内容和要求 Java程序设计实用教程 第4版 3 数据类型 变量 运算符 控制流语句 Java块 变量是存储数据的基本单元 数据类型确定要存储在内存中的数据的类型 运算符是一个符号 用于操作一个或多个参数以得出结果 程序是按顺序执行的 控制流语句允许改变此顺序 武汉理工大学信息学院 Java程序设计实用教程 第4版 4 2 1语言成分 2 1 1标识符与关键字2 1 2基本数据类型2 1 3变量与常量2 1 4运算符与表达式 武汉理工大学信息学院 Java程序设计实用教程 第4版 5 2 1 1标识符与关键字 关键字 由Java定义的 具有特定含义的单词 标识符 用户定义的单词 用于变量 类 对象 方法等 分隔符 分开两种语法成分注释 用于说明和解释的一段文字 程序书写风格 标识符命名和代码编写的一种习惯 武汉理工大学信息学院 Java程序设计实用教程 第4版 6 1 关键字 保留文字 null true false 武汉理工大学信息学院 Java程序设计实用教程 第4版 7 1 字母2 下划线 3 符号 首字母 任意多的 1 数字2 字母3 下划线 4 符号 其余部分 变量名 2 标识符命名规则1 2 Java语言中 变量命名要符合一定规则money score name sex 变量命名规范 简短且能清楚地表明变量的作用 通常第一个单词的首字母小写 其后单词的首字母大写 例如 myScore 武汉理工大学信息学院 Java程序设计实用教程 第4版 8 检查下面这些是否是合法的变量名 principal cost price marks 3 lastname city 123rate discount zipcode City int 2 标识符命名规则2 2 武汉理工大学信息学院 Java程序设计实用教程 第4版 9 2 标识符约定 关键字 变量名 对象名 方法名 包名通常全部字母小写如果由多个单词构成标识符 则首字母小写 其后单词首字母大写 如toString类名首字母大写常量名全部字母均大写 武汉理工大学信息学院 Java程序设计实用教程 第4版 10 3 分隔符 分隔符用于分开两个语法成分 不同的语法成分使用不同的分隔符 例如 关键字 标识符的分隔符是空格 语句的分隔符是分号 数据的分隔符是逗号 等 publicclassWelcome1 publicstaticvoidmain Stringargs inti j system out println 梅花香子苦寒来 武汉理工大学信息学院 Java程序设计实用教程 第4版 11 4 注释 注释 commentary 是程序中用于说明和解释的一段文字 对程序运行不起作用 程序中添加注释的目的是增强程序的可读性 Java提供3种注释方式 单行注释 多行注释和文档注释 文档注释 用于从源代码自动生成文档执行javadoc命令 根据源代码中的内容生成网页 武汉理工大学信息学院 Java程序设计实用教程 第4版 12 4 文档注释 常用的文档标记 see引用其他类 see类名 see完整类名 see完整类名 方法名类文档标记 version版本信息 author作者信息方法文档标记 param参数名说明 return说明 exception完整类名说明 deprecated声明方法为丢弃 武汉理工大学信息学院 Java程序设计实用教程 第4版 13 2 1 2基本数据类型 什么是数据类型类型是具有相同逻辑意义的一组值的集合 数据类型指一个类型和定义在这个类型的操作集合 数据类型分类基本数据类型 8种 byte short int long char double float boolean 取值范围决定于字节数 引用数据类型 3种数组 类 class 和接口 interface 从数据存放位置区分基本数据类型和引用数据类型 武汉理工大学信息学院 Java程序设计实用教程 第4版 14 Java数据存放位置 武汉理工大学信息学院 Java程序设计实用教程 第4版 15 2 1 3变量与常量 变量是存放数据的地方电脑使用内存来记忆计算时所使用的数据内存如何存储数据 内存像旅店 1 开房间 单人间 双人间 总统套间 2 入住 数据各式各样 要先根据数据的需求 即类型 为它申请一块合适的空间 内存地址不好记 怎么办 通过内存中小房间的别名找到数据存储的位置变量是存储数据的一个基本单元 房间 房间名字 房间类型 入住的客人 变量 变量名 变量类型 变量值 为什么需要变量 对应 武汉理工大学信息学院 Java程序设计实用教程 第4版 17 变量声明 变量声明语法 修饰符 类型变量 表达式 变量 表达式 例如 inti j Java中没有全局变量 只有方法变量 实例变量 类中的非静态变量 类变量 类中的静态变量 方法中的变量不能够有访问修饰符 所以下面访问修饰符表仅针对于在类中定义的变量 声明实例变量时 如果没有赋初值 将被初始化为null 引用类型 或者0 false 原始类型 武汉理工大学信息学院 Java程序设计实用教程 第4版 18 Java变量修饰符1 2 武汉理工大学信息学院 Java程序设计实用教程 第4版 19 Java变量修饰符2 2 变量声明示例 武汉理工大学信息学院 Java程序设计实用教程 第4版 20 classVariableTest publicstaticvoidmain String args doublea 1 0 intb 3 System out println 双精度变量的值为 a System out println 整型变量的值为 b 使用变量 声明变量并初始化 数据类型 变量名 内存空间存的数值 21 变量的作用域和生存期 变量可以在代码块中声明块以左大括号开始 以右大括号结束块用来定义作用域每次创建一个新块后 就会创建一个新的作用域变量的作用域是一个作用的范围 每个变量都有自己的作用域变量的生存期是指变量的生存周期 22 classScopeVar publicstaticvoidmain String args intnum 10 if num 10 num1在内层作用域中可用intnum1 num num System out println num和num1的值为 num num1 System out println num1的值为 num1 示例 错误 num1未知 检查变量的作用域如果从变量的作用域外访问变量 则会出错 23 常量 常量是一种标识符 它的值在运行期间恒定不变常量标识符在程序中只能被引用 而不能被重新赋值 24 常量的优点 如果不使用常量 直接在程序中填写数字或字符串 将会有什么麻烦 publicstaticdoubletoRadians doubleang returnang 180 0 3 14159265358979323846 publicstaticdoubletoDegrees doubleang returnang 180 0 3 14159265358979323846 publicstaticfinaldoublePI 3 14159265358979323846 圆周率publicstaticdoubletoRadians doubleang returnang 180 0 PI publicstaticdoubletoDegrees doubleang returnang 180 0 PI 程序的可读性变差 用户很难理解数字或字符串的意思 程序的可维护性变差 如果数值改变 则需要在很多地方改动 既麻烦又易出错 使用常量可以增强程序的可读性 可维护性 25 Java中常量的定义规则 加入final关键字代表常量 加入static关键字代表类变量尽量使用含义直观的常量来表示那些将在程序中多次出现的数字或字符串 publicclassStudent publicstaticfinalintFEMALE 1 代表女性publicstaticfinalintMALE 2 代表男性privateintsex 性别publicvoidsetSex intsex if sex FEMALE System out println 这是一名女学生 elseif sex MALE System out println 这是一名男学生 this sex sex 引用数据类型 引用数据类型 3种数组 类 class 和接口 interface 武汉理工大学信息学院 Java程序设计实用教程 第4版 26 intx 7 inty x Strings Hello Stringt s intx 7 inty x Strings Hello Stringt World 武汉理工大学信息学院 Java程序设计实用教程 第4版 27 2 1 4运算符与表达式 28 运算符的优先级 表达式通常由多个运算符组成 优先级的规则决定每个运算符在任何给定表达式中的计算顺序 运算符的结合性与兼容性 29 运算符的结合性 表2 7 单目运算符的结合性双目运算符的结合性运算的类型兼容原则类型相容赋值相容longbig 6 数值类型的兼容关系 由于Java是强类型的语言 所以在赋值语句两边类型一定要兼容 如果不兼容 则需要强制类型转换 C C 数值类型可以转换成布尔型的true和false Java中不可以 30 运算的正确性判断 避免数据溢出 byteb 127 b b 128 数据溢出b 1 128 int 31 表达式 就是用运算符把操作数连接起来的符合语法规则的运算式 表达式 例2 2 判断一个年份是否为闰年 闰年判断标准凡不能被100整除但能被4整除的年份 或者能被400整除的年份是闰年 其余年份是平年 32 importjava util Scanner publicclassLeapYear publicstaticbooleanisLeapYear Integeryear 实现判断year是否是闰年 publicstaticvoidmain String args Scanners newScanner System in System out println 请输入年份 inti s nextInt booleanres isLeapYear i System out println res 武汉理工大学信息学院 Java程序设计实用教程 第4版 33 publicstaticbooleanisLeapYear Integeryear if year 4 0 武汉理工大学信息学院 Java程序设计实用教程 第4版 34 2 2流程控制语句 2 2 1流程控制结构2 2 2顺序结构语句2 2 3选择语句2 2 4循环语句2 2 5转移语句 结构化程序设计必要性 面向过程程序设计和面向对象程序设计是软件设计方法的两个重要阶段 这两种程序设想并不是对立的 而是延续和发展的 其中 作为面向过程程序设计精华的结构化程序思想仍然是面向对象程序设计方法的基石 对象中的方法实现仍然是使用面向过程的结构化设计方式 武汉理工大学信息学院 Java程序设计实用教程 第4版 35 武汉理工大学信息学院 Java程序设计实用教程 第4版 36 2 2 1流程控制结构 顺序结构 分支结构 循环结构 三种结构的共同点 只有一个入口点 并且只有一个出口点 结构内的每一部分都有机会被执行到 对于每一个语句框来说 都应当有一条从入口到出口的路径通过它 否则没有执行机会 结构内没有 死循环 无终止的循环 武汉理工大学信息学院 Java程序设计实用教程 第4版 37 武汉理工大学信息学院 Java程序设计实用教程 第4版 38 不执行与死循环 错误的程序结构 武汉理工大学信息学院 Java程序设计实用教程 第4版 39 Java语句分类 武汉理工大学信息学院 Java程序设计实用教程 第4版 40 2 2 2顺序结构语句 表达式语句表达式 空语句复合语句 变量声明或常量声明 语句序列 inta 5 intb a 3 System out print a a System out print b b 武汉理工大学信息学院 Java程序设计实用教程 第4版 41 2 2 3选择语句 if选择结构是根据条件判断之后再做处理 if语句if语句的语法格式if 布尔表达式 语句1 else语句2 if 明天下雨 我就带伞去上课 武汉理工大学信息学院 Java程序设计实用教程 第4版 42 多重if结构就是在else部分中还包含其他if块 多重if结构 if 条件 语句 elseif 条件 语句 else 语句 可以有多个 可以省略 多重if结构 例 输入分数 小于60输出不及格 60 79输出中等 80 89输出良好 大于等于90输出优秀 publicclassScore publicstaticvoidmain String args Scanners newScanner System in System out println 请输入分数 intscore s nextInt Stringres evaluate score System out println 评价 res publicstaticStringevaluate ints 武汉理工大学信息学院 Java程序设计实用教程 第4版 43 武汉理工大学信息学院 Java程序设计实用教程 第4版 44 publicstaticStringevaluate ints Stringres if s 90 res 优秀 elseif s 80 res 良好 elseif s 60 res 中等 else res 不及格 returnres 武汉理工大学信息学院 Java程序设计实用教程 第4版 45 2 switch语句 switch语句的基本格式为 switch 表达式 case常量表达式1 语句序列1 break case常量表达式2 语句序列2 break default 语句序列 计算表达式的值 如果等于常量1 如果等于常量2 如果没有找到匹配的值 Switch语句 武汉理工大学信息学院 Java程序设计实用教程 第4版 46 其中 1 表达式的值必须与整型兼容 整形或者字符 2 常量表达式是可能出现的值 3 不同的case分支对应着不同的语句或块序列 4 break表示跳出这一分支 习题 switch语句示例 输入数字 按下列对应关系显示 输入数字显示1A2B3C4D其他 武汉理工大学信息学院 Java程序设计实用教程 第4版 47 importjava util Scanner publicclassSwitchExample publicstaticvoidmain String args Scanners newScanner System in System out println 请输入一个整数 inti s nextInt switch i 武汉理工大学信息学院 Java程序设计实用教程 第4版 48 case1 System out println A break case2 System out println B break case3 System out println C break case4 System out println D break default System out println 每个分支后的break语句一定要加上 否则会出现什么情况 武汉理工大学信息学院 Java程序设计实用教程 第4版 49 Stringday 星期一 switch day case 星期一 System out println 星期一 青菜 break case 星期二 System out println 星期二 鱼 break default switch后面小括号中表达式的值必须是整型或字符型 代码错误 Switch错误示例 武汉理工大学信息学院 Java程序设计实用教程 第4版 50 2 2 4循环语句 1 while语句 while 循环条件 循环操作 符合条件 循环继续执行 否则 循环退出 循环中被重复执行的操作 inti 1 while i 30 System out println hello i 特点 先判断 再执行 武汉理工大学信息学院 Java程序设计实用教程 第4版 51 2 do while语句 do 循环操作 while 循环条件 先执行一遍循环操作 符合条件 循环继续执行 否则 循环退出 特点 先执行 再判断 武汉理工大学信息学院 Java程序设计实用教程 第4版 52 while循环和do while循环的区别语法不同初始情况不满足循环条件时while循环一次都不会执行do while循环不管任何情况都至少执行一次 do 循环操作 while 循环条件 while 循环条件 循环操作 先判断 再执行 先执行 再判断 比较while和do while 例2 7 计算并输出Fibonacci序列 Fibonacci数列是首两项为0和1 以后各项是前面两项值之和的数据序列 0 1 1 2 3 5 8 13 21 34 55 是输出数列的前N 输入参数 项 武汉理工大学信息学院 Java程序设计实用教程 第4版 53 importjava util Scanner publicclassFibonacci publicstaticvoidmain String args Scanners newScanner System in System out println 请输入序列个数 大于3 intnum s nextInt inti 0 j 1 intnTimes 2 inttemp System out print i j do temp i j i j j temp System out print j nTimes while nTimes num 武汉理工大学信息学院 Java程序设计实用教程 第4版 54 与书上P36实现的差异 武汉理工大学信息学院 Java程序设计实用教程 第4版 55 3 for语句 for循环语句for循环语句实现已知次数的循环 其基本格式为 for 初始化表达式 测试表达式 步长表达式 语句或块 for循环的语法和执行顺序 3 for语句 for 条件为true 循环体被执行 for inti 0 i 100 i System out println hello 表达式1 表达式2 表达式3 循环操作 参数初始化 条件判断 更新循环变量 1 2 4 3 For语句 武汉理工大学信息学院 Java程序设计实用教程 第4版 57 其执行顺序如下 1 首先运行初始化表达式 2 然后计算测试表达式 如果表达式为true 执行语句或块 如果表达式为false 退出for循环 3 最后执行步长 例2 8 用for语句求累加和并显示计算公式 publicclassSum for publicstaticvoidmain Stringargs inti 1 n 10 s 0 for i 1 i1 i 循环控制变量递减变化 s i System out print i System out println i s i 武汉理工大学信息学院 Java程序设计实用教程 第4版 58 例 用for语句求累加和并显示计算公式 武汉理工大学信息学院 Java程序设计实用教程 第4版 59 多重循环 例2 9 输出九九乘法表 演示for for的两重循环结构 习题 求100以内的素数 演示for与while语句构成的二重循环结构 例 输出如下格式的九九乘法表 武汉理工大学信息学院 Java程序设计实用教程 第4版 60 61 publicclassMul99 publicstaticvoidmain Stringargs inti j n 9 System out print for i 1 i n i System out print i 输出第一行System out print n 输出一行分隔线for i 1 i n i System out print System out println for i 1 i n i 输出九行System out print i 输出每行的乘数for j 1 j i j 输出一行的若干乘积数System out print String format 4d i j System out println 习题 求100以内的素数 publicclassPrimeNumber publicstaticvoidmain String args inti n System out print primeNumberin100are for n 2 n 100 n 2 100的所有数i 2 while i n if n i 0 break 若能整除说明n不是素数 跳出当前循环i if i n System out print n 是素数 武汉理工大学信息学院 Java程序设计实用教程 第4版 62 素数定义 一个大于1的自然数 如果除了1和它自身外 不能被其他自然数整除的数 武汉理工大学信息学院 Java程序设计实用教程 第4版 63 2 2 5转移语句 return语句return 返回值 break语句和continue语句break 退出循环continue 继续循环 例 用for语句求和 在i 5时break continue说明两者差异 publicclassSum for2 publicstaticvoidmain Stringargs inti 1 n 10 s 0 System out print Sum n 显示计算公式for i 1 i n i 循环控制变量递减变化 if i 5 break continue s i System out print i System out println i s i 武汉理工大学信息学院 Java程序设计实用教程 第4版 64 例 break continue差异 break continue分别是什么结果呢 武汉理工大学信息学院 Java程序设计实用教程 第4版 65 2 3数组 2 3 1一维数组2 3 2二维数组定义 具有相同数据类型的元素的有序集合 特性 引用数据类型 动态数组 new 武汉理工大学信息学院 Java程序设计实用教程 第4版 66 2 3 1一维数组 声明一维数组变量数据类型 数组或数据类型数组 inta 或int a 使用new为数组分配空间数组 new数据类型 长度 a newint 5 inta newint 5 数组长度length数组 length 2 3 1一维数组 数组元素的表示及运算数组 下标 下标从0开始a 0 a 1 a 2 a 3 a 4 a i a i 2 a i 1 数组元素参加运算数组声明时赋初值inta 1 2 3 4 5 数组元素的初始化类型a new类型 5 Java对使用new分配的存储单元都进行初始化 根据类型不同赋给相应的初值 P41 武汉理工大学信息学院 Java程序设计实用教程 第4版 67 武汉理工大学信息学院 Java程序设计实用教程 第4版 68 图2 8一维数组 动态存储示意图 例2 5 用一维数组计算Fibonacci序列值 例2 5 用一维数组计算Fibonacci序列值 publicclassFib array publicstaticvoidmain Stringargs intn 25 i intfib newint n fib 0 0 fib 1 1 for i 2 i n i fib i fib i 1 fib i 2 for i 0 i fib length i 输出一维数组System out print fib i System out println 武汉理工大学信息学院 Java程序设计实用教程 第4版 69 武汉理工大学信息学院 Java程序设计实用教程 第4版 70 数组的引用模型 基本数据类型变量的传值赋值 数组变量的引用赋值 b a 仅仅是把a的地址赋给了b变量 真正地给b数组也分配了内存空间 武汉理工大学信息学院 Java程序设计实用教程 第4版 72 复制数组 publicstaticvoidarraycopy Objectsrc intsrcPos Objectdest intdestPos intlength 例如 inta 1 2 3 4 5 intb newint 5 System arraycopy a 0 b 1 4 将a数组的前4个元素复制到b数组中 ArrayCopyTest例子中使用到Arrays toString方法 Arrays用户介绍 73 importjava util Arrays publicclassArrayCopyTest publicstaticvoidmain String args int src 1 2 3 4 5 System out print initialvalue System out println Arrays toString src int dst src 浅复制dst 2 30 System out print 浅复制修改数据元素后 srcvalue System out println Arrays toString src System out print 浅复制修改数据元素后 dstvalue System out println Arrays toString dst src newint 1 2 3 4 5 System arraycopy src 0 dst 0 src length 深复制dst 2 30 System out print 深复制修改数据元素后 srcvalue System out println Arrays toString src System out print 深复制修改数据元素后 dstvalue System out println Arrays toString dst 武汉理工大学信息学院 Java程序设计实用教程 第4版 74 2 3 2二维数组 声明二维数组intmat newint 3 4 intmat 1 2 3 4 5 6 二维数组元素表示格式如下 二维数组 下标1 下标2 mat i j 表示第i行第j列的数组元素 武汉理工大学信息学院 Java程序设计实用教程 第4版 75 2 二维数组的引用模型 武汉理工大学信息学院 Java程序设计实用教程 第4版 76 例2 6 幻方 N阶幻方 各行 各列 各对角线上数字之和相等 幻方有多种构造方法 如杨辉法 连续摆数法 连续摆数法构造规则 1 约定初始位置为第1行中间 放置1 2 向当前位置的右上方顺序放置下一个数 如数5 6 将幻方阵沿行 列方向看成环形 如数2 3 3 若当前放置数为n的倍数 则下一个数的位置是本列的下一行 武汉理工大学信息学院 Java程序设计实用教程 第4版 77 importjava util Scanner publicclassMagic publicstaticvoidmain Stringargs System out print 请输入阶数 Scannerscan newScanner System in intn scan nextInt 阶数intmat newint n n inti 0 j n 2 i j用做下标 第1个数放在第1行中间位置for intk 1 k n n k k是自然数 mat i j k 当前位置取值if k n 0 当前值为n的倍数i i 1 n 下一位置向下一行else i i 1 n n 下一位置向右上方j j 1 n 武汉理工大学信息学院 Java程序设计实用教程 第4版 78 System out println n n for i 0 i mat length i 输出二维数组 for j 0 j mat i length j System out print String format 4d mat i j System out println 武汉理工大学信息学院 Java程序设计实用教程 第4版 79 3 不规则的二维数组 图2 14多次申请二维数组存储空间 武汉理工大学信息学院 Java程序设计实用教程 第4版 80 2 4静态方法 2 4 1方法声明与调用2 4 2参数传递2 4 3方法重载2 4 4递归方法 武汉理工大学信息学院 Java程序设计实用教程 第4版 81 2 4 1方法声明与调用 方法声明 修饰符 返回值类型方法 参数列表 语句序列 return 返回值 方法调用方法 参数列表 声明main方法publicstaticvoidmain Stringargs Static区分类方法和实例方法 武汉理工大学信息学院 Java程序设计实用教程 第4版 82 2 4 2参数传递 方法调用时的参数传递原则基本数据类型参数传递值 引用数据类型参数传递引用 例2 13 交换两个变量值问题讨论 值传递 publicclassSwap1 publicstaticvoidmain String args inta 5 b 10 swap a b System out println afterswap a a b b privatestaticvoidswap inta intb inttemp a a b b temp 武汉理工大学信息学院 Java程序设计实用教程 第4版 83 输出的a b分别是 引用传递 publicclassSwap2 publicstaticvoidmain String args inta 5 b 10 swap a b System out println afterswap a a 0 b b 0 privatestaticvoidswap int a int b inttemp a 0 a 0 b 0 b 0 temp 武汉理工大学信息学院 Java程序设计实用教程 第4版 84 输出结果是什么 武汉理工大学信息学院 Java程序设计实用教程 第4版 85 2 4 3方法重载 voidprint booleanb voidprint charc voidprint inti voidprint doubled 重载的含义 Math abs 方法声明有4种 intabs inta longabs longa floatabs floata doubleabs doublea 一个方法 函数主要包含方法名 参数列表 返回类型 方法重载举例 publicclassOverloadDemo publicstaticvoidmain String args Stringst Helloworld inti 5 booleanb true myPrint st myPrint i myPrint b 武汉理工大学信息学院 Java程序设计实用教程 第4版 86 privatestaticvoidmyPrint booleanb System out println inbooleanprintb b privatestaticvoidmyPrint inti System out println inintprinti i privatestaticvoidmyPrint Stringst System out println inStringprintst st 武汉理工大学信息学院 Java程序设计实用教程 第4版 87 武汉理工大学信息学院 Java程序设计实用教程 第4版 88 2 4 4递归方法 递归定义递归算法 例2 16 求n 的递归方法 f n n f n 1 5 5 4 3 2 1 5 4 0 1或1 1n n n 1 importjava util Scanner publicclassFactorial recursion publicstaticintfactorial intn 求阶乘n 递归方法 if n 0 if n 0 n 1 return1 elsereturnn factorial n 1 递归调用return 1 n 0时n 无定义 武汉理工大学信息学院 Java程序设计实用教程 第4版 89 武汉理工大学信息学院 Java程序设计实用教程 第4版 90 例2 17 求Fibonacci数列第n项的递归方法 0 1 1 2 3 5 8 publicclassFibonacci recursion publicstaticintfibonacci intn if n 0 if n 0 n 1 returnn elsereturnfibonacci n 2 fibonacci n 1 return 1 Fibonacci数列当n 0时无定义 publicstaticvoidmain Stringargs Scannerscan newScanner System in intn scan nextInt for inti 0 i n i System out print fibonacci i System out println 武汉理工大学信息学院 Java程序设计实用教程 第4版 91 2 5字符串 2 5 1字符串的基本数据类型特性字符串常量 abc 字符串变量及运算赋值运算Stringstr abc Stringstr2 str 连接运算 str abc xyz str的值为 abcxyz 字符串不是字符数组 图2 21字符串的引用模型 94 publicclassTest publicstaticvoidmain String args Stringstr abc Stringstr2 str System out println str str str2 str2 str2 str2 edf System out println str str str2 str2 这时str2和str是指向同一个对象实例 Java为str2重新分配了一个对象实例 Eclipse代码演示 武汉理工大学信息学院 Java程序设计实用教程 第4版 95 2 5 2字符串的类特性 字符串变量 方法 参数列表 String类的主要方法 例如 Stringstr abc intn str length n获得str的长度charch str charAt 0 ch获得str的第1个字符 a 例2 18 判断标识符 总结 掌握Java语言的基本语法成分 包括标识符与关键字 数据类型 运算符 表达式 变量声明等语言成分 掌握分支 循环等流程控制语句的语法和使用 特别注意与C C 的不同之处 掌握数组类型的声明和动态内存申请 掌握字符串的使用 掌握Java语言的方法声明和调用规则 掌握基本类型和引用类型作为方法参数和返回值的传递规则 掌握Eclipse程序调试技术 重点 数组的引用模型 使用静态方法 引用类型作为方法的参数和返回值 武汉理工大学信息学院 Java程序设计实用教程 第4版 96 武汉理工大学信息学院 Java程序设计实用教程 第4版 97 实验Java程序设计基础 自做 目的 掌握Java语言的基本语法 要求 掌握使用流程控制语句 数组 静态方法和字符串 掌握Eclipse的程序调试技术 重点 数组的引用模型 基本类型和引用类型作为方法参数和返回值的传递规则 难点 Eclipse的程序调试技术 1 Java语言的基本数据类型有哪些 引用数据类型有哪些 98 习题 答 基本数据类型有 整数类型byte short int long 浮点数类型float double 字符类型char 布尔类型boolean 引用数据类型包括数组 array 类 class 和接口 interface 2 与C 语言相比 Java语言的变量和常量声明有什么差别 答 Java语言没有全局变量 成员 局部变量含义及变量声明格式与C 相同 Java语言没有宏替换 使用最终变量概念代替C 中的常量和宏替换 使用final关键字声明最终变量 只能赋值一次 这样既增加了常量功能 又避免全局变量和宏替换的副作用 3 Java语言的运算分哪些类型 与C 语言相比 运算符及运算含义有哪些变化 答 Java语言有算术运算 关系运算 位运算 逻辑运算 赋值运算 强制类型转换 条件运算 括号运算 点运算 new 字符串连接运算和instanceof运算等 其中 字符串连接和instanceof运算符是Java新增的 此外 放弃了C 的sizeof运算符 4 分析基本数据类型和引用数据类型的主要特点 说明这两种变量的差别 武汉理工大学信息学院 Java程序设计实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新质生产力的多领域结合
- 新质生产力布局未来展望
- 2025年微生物学专业知识应用考核模拟试卷答案及解析
- 2025年全科护理护士技能操作能力测试卷答案及解析
- 2025年心内科护理学模拟试卷答案及解析
- 2025年药物制剂学口服溶解片的质量控制模拟评估试卷答案及解析
- 2025年内分泌科糖尿病高血压并发症护理操作规范测试答案及解析
- 2025年风湿病诊断和治疗试题答案及解析
- 2025年眼科疾病诊断与手术操作技巧模拟考试答案及解析
- 新质生产力视角下的银行业发展
- 泛光施工招标文件
- 旅游策划实务整套课件完整版电子教案课件汇总(最新)
- 刑法各论(第四版全书电子教案完整版ppt整套教学课件最全教学教程)
- DB23∕T 2661-2020 地热能供暖系统技术规程
- 人工挖孔桩施工监测监控措施
- 第7章:方差分析课件
- 国家职业技能标准 (2021年版) 6-18-01-07 多工序数控机床操作调整工
- 办公楼加层改造施工组织设计(100页)
- 洁净厂房不锈钢地面施工方案
- DS6-K5B计算机联锁系统介绍文稿
- 工艺管廊架施工方案
评论
0/150
提交评论