版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第3章 Java程序设计基础重点难点Java变量的使用Java各种运算符及表达式的使用Scanner类的应用学习目标掌握标识符命名规则了解Java关键字掌握Java基本数据类型掌握变量的定义及使用掌握Java各种运算符及表达式了解运算符的优先级理解类型转换的含义熟悉String及Scanner类的用法3.1典型案例【案例描述】使用Eclipse编写程序,从控制台输入一个学生三门课的成绩,计算并输出三门课的总成绩与平均成绩,运行结果如下图所示。【运行结果】3.2Java语言组成元素Java的标识符Java的关键字Java的分隔符3.2.1Java的标识符“标识符”是作为标志识别用的符号。Java语言中所有的变量、方法、类和对象等被处理的数据都是要有名称的,标识符就是用来给这些数据命名用的符号。在Java语言中,用户自定义标识符必须遵守以下原则:
(1)标识符只能由数字、字母、下划线(_)或美元符号($)构成,并且开头不能是数字。
(2)大写、小写字母被认为是两个不同的字符。
(3)没有长度限制,可以为标识符取任意长度的名字。
(4)不能和Java语言的关键字相同,但是它可以包含关键字,作为其名字的一部分。
例如:
合法标识符:a4,china,n_xy,Q7tz,$change。
不合法标识符:2_a,#class,float,void,No-1。3.2.2Java的关键字
关键字是Java语言中具有专门含义和用途的特殊标识符,不能当作用户的标识符使用。Java中的常见关键字如下表。abstractbooleanbreakbytecasecatchcharclasscontinuedefaultdodoubleelseextendsfinalfinallyfloatforitimplementsimportinstanceintinterfacelongnativenewnullpackageprivateprotectedpublicreturnshortstaticsuperswitchsynchronizedthisthrow/throwstransienttryvoidvolatilewhileassertenum3.2.3Java的分隔符注释符可以提高程序的可读性,注释的内容一般起到提示编程思路或者说明程序功能的作用。注释符有3种形式。
①“//注释内容”以“//”开始的该行后面的内容为注释,用于单行的注释,放在一行的开头或语句的结尾。
②“/*注释内容*/”用于多行的注释。
③“/**注释内容*/”用于多行的注释。这种注释被写入javadoc文档。
空白符包括空格符、回车符、换行符和制表符等。使用时,多个空白符与一个空白符的作用相同。
普通分隔符是有语法含义的,需要按照语法规定去使用。普通分隔符有以下4种。
①大括号“{}”用于定义复合语句和数组的初始化以及定义类体、方法体等。
②分号“;”用于结束语句。
③逗号“,”用于分隔变量、参数。
④冒号“:”用于分隔标号和语句。3.3数据类型Java语言的数据类型可分为基本数据类型和引用数据类型3.3.1基本数据类型3.3.2常量与变量常量就是在程序运行过程中其值保持不变的量,即不能被程序改变的量,也把它称为最终量。常量可分为数值常量和符号常量。数值常量就是直接出现在程序语句中的常量值。数值常量也有数据类型,系统根据数值量识别。符号常量使用一个标识符来替代一个常量数值,其定义的一般格式为:final数据类型常量名=value[,常量名=value…];
其中:final——关键字,表示后边定义的是常量,即符号常量;
数据类型——常量的数据类型,它可以是基本数据类型之一;
常量名——标识符,它表示常数值value,在程序中凡是用到value值的地方均可用常量名标识符替代。注意:在程序中,为了区分常量标识符和变量标识符,常量标识符一般全部使用大写字母。3.3.2常量与变量变量是程序中的基本组成部分,在程序的运行过程中可以随时改变其存储单元的值。变量定义的一般格式如下:
数据类型变量名[=value][,变量名[=value]…];
其中:
数据类型——表示后边定义变量的数据类型;
变量名——一个标识符,应遵循标识符的命名规则。
可以在说明变量的同时为变量赋初值。例如:intx1=5,x2=-8;
floatf1=4.4f,f2=1.325f;
doubled=75.2;3.3.2常量与变量没有初始值的变量是不能使用的,否则编译不能通过。声明变量时如果没有给变量赋初值,则可用赋值语句来赋初值。赋值语句格式如下:
变量名=表达式;
其功能是:计算出“表达式”的值,将其赋值给左边的变量。注意:右边必须是有确定值的表达式,左边只能是已经定义过的变量。
例如:变量的声明与赋值。
inta; //变量的声明
a=70; //变量的赋值
charc; //变量的声明
c='B'; //变量的赋值变量的初始化是将变量的声明与赋值同时进行,即边定义边赋值。
例如上面两组语句可以改写为:inta=70;
//对变量a初始化charc='B'; //对变量c初始化
3.3.2常量与变量变量的作用域是指变量自定义的位置起,可以被使用的有效范围。在程序中不同的地方定义的变量具有不同的作用域。不同的变量,作用域也不同。局部变量是在方法内定义的变量,也称为自动(Automatic)变量。它的作用域为它所在方法或方法中的某块代码,离开该方法,局部变量被清除。
在成员方法内定义的变量是该成员方法的局部变量。在几个成员方法中使用相同的变量名,其所代表的是不同的变量。在一个确定的域中,变量名应该是唯一的。通常,一个域用大括号“{”和“}”来划定。局部变量在方法或方法的某一块代码中声明。
类变量是在类中声明的,不是在类的方法中声明的,显然它的作用域是整个类。
方法参数是将数据传递给方法的,它的作用域不能超越使用它的方法。
异常处理参数是传递给异常处理代码的,其作用域就是异常处理部分。3.3.3数据类型转换整型、实型、字符型数据可以混合运算。当程序中出现这种情况时,Java语言要进行变量数据类型转换,使各类型一致后,再进行运算。在Java语言里,类型转换有两种:自动类型转换和强制类型转换。自动类型转换发生在不同数据类型的混合运算时,由编译系统自动完成。一般情况下,系统自动将两个运算数中低级的运算数转换为和另一个较高级运算数的类型相一致的数据,然后再进行运算。自动转换遵循以下规则:
(1)若运算数的类型不同,则先转换成同一类型,然后进行运算。
(2)转换按数据长度增加的方向进行,以保证精度不降低。(3)所有的浮点型数据运算都是以双精度进行的,即使仅含单精度运算的表达式,也要先转换成double型,再进行运算。
(4)char、short和byte型参与运算时,必须先转换成int型。
(5)在赋值运算中,赋值号两边量的数据类型不同时,赋值号右边量的类型将转换为左边量的类型。如果右边量的数据类型长度比左边量的数据类型长度长,将丢失一部分数据,这样会降低精度,丢失的部分按四舍五入向前舍入。3.3.3数据类型转换强制类型转换的功能是把变量或表达式的运算结果强制转换成类型说明符所表示的类型。其一般形式为:
(类型说明符)变量
或(类型说明符)(表达式)(类型说明符)中的“()”称为强制类型转换运算符。
例如:
(double)a; //把a转换为实型
(int)(x+y); //把x+y的结果转换为整型注意:
(1)在使用强制转换时表达式必须加括号(单个变量可以不加括号)。例如:把(int)(x+y)写成(int)x+y则表示将x转换成int型之后再与y相加。
(2)无论是强制转换还是自动转换,都只是为了本次运算的需要而对变量的数据长度进行的临时性转换,而不改变数据说明时对该变量定义的类型和初值。3.4运算符与表达式
运算符与表达式是构成程序语句的要素。Java提供了多种运算符,分别用于不同运算的处理。表达式是由操作数和运算符按一定的语法形式组成的符号序列。一个常量或一个变量名是最简单的表达式。表达式是可以计算出结果的,一个表达式肯定有一个确定类型的值。3.4.1算术运算符及算术表达式常用的算术运算符有:+(加),-(减),*(乘),/(除),%(求余),++(自加1),--(自减1),它们用于数值量的算术运算。由算术运算符与操作数连接起来的式子称为算术表达式。例如:x+6/y,i++,5*(a-8),(a+b)%10等。加、减、乘、除四则运算的运算规则和数学中的基本一致。说明:(1)“/”:除法运算符左右两边的运算数均为整型时,结果也为整型,舍去小数部分。如果两个运算数中至少一个为实型,则结果为double型。(2)“%”:求余运算用来求两数相除后的余数,如:5%3结果为2。(3)“+”:加法运算符在字符串类型中也可以使用,其功能是实现字符串的连接,如:"hello"+"java"的结果为"hellojava"。(4)“++”“--”是单目运算符,参与运算的是单个变量,它分为前置运算和后置运算,如:++i,i++,--i,i--,其功能是使i自身加1或减1,即相当于i=i+1或i=i-1。前缀++、--与后缀++、--有区别。++i在使用i之前使i的值加1,即i的值先加1,后使用;i++在使用i之后使i的值加1,即i的值先使用,后加1。3.4.2关系运算符及关系表达式关系运算符用于两个数据的比较运算,它们包括:>(大于),<(小于),>=(大于等于),<=(小于等于),==(等于),!=(不等于)。例如'x'+1>='z',(a>b)!=(b>c)。“关系”运算就是“比较”运算,它通常用来比较两个表达式的值,根据比较的结果得出布尔类型的值true或false。例如:设x=100,y=60,则
(1)x>y的值为true。
(2)x==y的值为false。3.4.3逻辑运算符及逻辑表达式在程序的流程控制中,只需描述单一条件的,可以用关系表达式如“x>=1”来实现,如果需要描述“x>=1”且“x<10”这样比较复杂的条件就要用到逻辑表达式了。
Java的三种逻辑运算符
&&逻辑与(相当于“并且”)||逻辑或(相当于“或者”)!逻辑非(相当于“否定”)运算规则
逻辑运算符的操作数和结果都是布尔型。(1)&&运算的一般形式是:A&&B。其中:A、B是逻辑或关系表达式。若A和B的值至少有一个为false,则A&&B的值为false;若A和B的值均为true,则A&&B的值为true。(2)||运算的一般形式是:A||B。其中:A、B是逻辑或关系表达式。若A和B的值至少有一个为true,则A||B的值为true;若A和B的值均为false,则A||B的值为false。(3)!运算的一般形式是:!A。其中:A是逻辑或关系表达式。若A的值为true,则!A的值为false,反之为true。3.4.4赋值运算符及赋值表达式赋值运算符是最常用的运算符,用于把一个表达式的值赋给一个变量(或对象)。一般形式为:
变量=表达式赋值表达式的值为赋值号右边变量或表达式的值,例如:a=5的值为5,x=a+3的值为8,y=(a=3)+(b=8)的值为11。
Java也提供了复合的赋值运算符,包括:+=,-=,*=,/=,%=。
例如:x*=x+y; //相当于x=x*(x+y);x+=y; //相当于x=x+y;3.4.5其他运算符及表达式条件运算符是三目运算符,由条件运算符组成的表达式
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 综合计算计时工作制度
- 2025 初中写作运用时空置换营造奇幻氛围课件
- 数据安全管理规范概要解读
- 昆明市官渡区矣六街道办事处招聘考试真题2025
- 2025年吉安市文化传媒集团有限责任公司招聘笔试真题
- 中医药养老服务认知调查问卷
- 传染病监测报告安全质量目标及管理细则2026年
- 2026年行政数据上报申报材料
- 工业厂区排水系统卫生制度
- 2026年快递配送车辆交通事故应急安全演练方案
- 和谐婚姻家庭知识讲座
- 宠物腹部手术-胃切开术
- 宠物腹部手术-肠管侧壁切开术
- 2022-2023学年六年级下册综合实践活动茶与生活(说课稿)
- 丙戊酸镁缓释片及其制备工艺
- 警惕病从口入-课件
- 各大名校考博真题及答案心内科部分
- 中药与食物的关系药食同源
- 杭州电子科技大学-计算机学院-计算机科学与技术(学术)培养方案
- 新人教版五年级下册数学(新插图)练习六 教学课件
- GB/T 23901.2-2019无损检测射线照相检测图像质量第2部分:阶梯孔型像质计像质值的测定
评论
0/150
提交评论