第2章计算器——数据类型与表达式_第1页
第2章计算器——数据类型与表达式_第2页
第2章计算器——数据类型与表达式_第3页
第2章计算器——数据类型与表达式_第4页
第2章计算器——数据类型与表达式_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、能力目标:能力目标:理解数据类型,学会声明和使用变量,学会运用算术运算符和表达式。理解语句,学会使用声明语句、赋值语句和方法调用语句。能运用运算符、表达式和语句编写简单计算器程序。2.1 任务预览任务预览 本章实训程序运行结果: 2.2 标识符标识符 标识符标识符:按一定规则定义、命名的符号名称。 标识符命名规则:(1)只能使用字母(含汉字)、数字和下划线;(2)必须以字母或下划线开头。 例如:x、y、strX、strY、_age、studentCourseScore、CalculateArea、stu1、stu2、数1、变量2、计算面积 用途:对程序的各个组成元素如变量、方法、类等进行命名标

2、识。 n标识符(Identifier)n保留字(Reserved Word )2.2、Java语言基本元素语言基本元素n程序员对程序中的各个元素加以命名时使用的命名记号称为标识符(标识符(identifier)包括:类名、变量名、常量名、方法名、字母,下划线(字母,下划线(_),美元符美元符($)开始的一个字符序列,后开始的一个字符序列,后面可以跟字母,下划线,美元符,数字面可以跟字母,下划线,美元符,数字。n合法的标识符identifier userName User_Name _sys_value $changen非法的标识符:2mail room# class1、Java语言基本元素语言

3、基本元素标识符标识符n具有专门的意义和用途,不能当作一般的标识符使用,这些标识符称为保留字(reserved word)。abstract break byte boolean catch case class char continue default double do else extends false final float for finally if import implements int interface instanceof long length native new null package private protected public final return

4、 switch synchronized short static super try true this throw throws threadsafe transient void while1、Java语言基本元素语言基本元素保留字保留字n数据和返回值类型:int, void, returnn包/类/成员/接口:package, class, interfacen访问控制:public, private, protectedn循环及循环控制:if, switch, breakn例外处理:throw, try, finallyn保留词(无含义但不能使用):goto, const1、Java

5、语言基本元素语言基本元素保留字:基本分类保留字:基本分类n在Java中,true、false和null都是小写的。区别于C+中大写的TRUE、FALSE和NULL。n所有的数据类型所占用的字节数都是固定的,并且和实现无关的,因此在Java中没有sizeof操作符。n不必死记这些关键词,当理解每个关键词的含义后,自然就记住了所有的关键词。1、Java语言基本元素语言基本元素保留字:注意事项保留字:注意事项2、Java数据类型数据类型q 常量(Constant)q 变量(Variable)q 数据类型(Data Type)n 基本数据类型(Primary Data Types)n 复合数据类型(C

6、omposite Data Types)Java中 的 常 量 值 是 用 文 字 串 表 示 的,它 区 分 为 不 同 的 类 型,如 整 型 常 量 123,实 型 常 量 1.23,字 符 常 量 a ,布 尔 常 量 true、false以 及 字 符 串 常 量 This is a constant string.。与 C、 C+不 同,Java中 不 能 通 过 #define命 令 把 一 个 标 识 符 定 义 为 常 量,而 是 用 关 键 字 final来 定义,其定义格式为:final Type varName = value , varName =value ;qfi

7、nal int globalAccount = 100, nationalAccount = 50;qfinal double PI=3.141592、Java数据类型数据类型常量常量n程序中的基本存储单元,其定义包括变量名、变量类型和作用域几个部分,定义格式为:nType varName = value , varName =value;nint n = 3, n1 = 4;nJava中变量的缺省初值缺省初值都是确定的:n布尔变量的初值为:falsen整数变量的初值为:0n浮点数变量的初值为:0.0n引用(复合)变量的初值为:nulln在方法实现中定义的变量必须显式的初始化。2、Java数据

8、类型数据类型变量变量Java type systemprimitivereferencenullcharnumericbooleanclassinterface arrayintegralfloating-pointbyteshortintlongfloatdouble2、Java数据类型数据类型数据类型数据类型基本数据类型基本数据类型复合数据类型复合数据类型n 所有基本类型所占的位数都是确定的,并不因操作系统的不同而不同。n 所有基本类型的关键词都是小写的。数据类型数据类型所占位数所占位数数的范围数的范围 char 160 65535 byte 8-2727-1 short 16-21521

9、5-1 int 32-231231-1 long 64-263263-1 f loat 32 3.4e038 3.4e038 double 64 1.7e308 1.7e3082、Java数据类型数据类型基本数据类型基本数据类型n布尔型数据只有两个值true和false,且它们不对应于任何整数值布尔型变量的定义如:boolean b = true; n布尔型数据只能参与逻辑关系运算:n& | = != ! n示例:nboolean b1;nboolean b2 = true;nb = !b2;nboolean b = (b1 & b2) != false;2、Java数据类型数据类型基本数据类

10、型:基本数据类型:布尔类型布尔类型(boolean)n字符型数据代表16位的Unicode字符n字符常量是用单引号括起来的一个字符na B n u0030n字符型数据的取值范围为n065535 或者说 u0000uFFFFnu0000为缺省值n示例nchar c1; 缺省值为0nchar c2 = 0; 赋初值为字符0nchar c3 = 32; 用整数赋初值为空格2、Java数据类型数据类型基本数据类型:基本数据类型:字符类型字符类型(char)n特殊字符的常量表示法:n反斜线(Backslash)n退格(Backspace)bn回车(Carriage return)rn进纸符(Form f

11、eed)fn制表符(Form feed)tn换行(New line)nn单引号(Single quote)n八进制数( 0377 )DDDnUnicode字符uHHHH2、Java数据类型数据类型基本数据类型:基本数据类型:字符类型字符类型(char)n整型常量1. 十进制整数如123,456,02. 八进制整数以0开头,如0123表示十进制数83,011表示十进制数9。3. 十六进制整数以0 x或0X开头,如0 x123表示十进制数291,0X12表示十进制数18。2、Java数据类型数据类型基本数据类型:基本数据类型:整数类型整数类型(byte, short, int, long)n整型变

12、量整型变量 类型为byte、short、int或long,byte在机器中占8位,short占16位,int占32位,long占64位。整型变量的定义如: int x=123; /指定变量x为int型,且赋初值为123 byte b = 8; short s = 10; long y = 123L; long z = 123l; n64位长整数以l或L结尾: 12l, -343L, 0 xfffffffffLn1L 32 等于 4294967296Ln1 高高byte,short,char int long float double操作数操作数1类型类型操作数操作数2类型类型转换后的类型转换后

13、的类型byte、short、charintintbyte、short、char、intlonglongbyte、short、char、int、longfloatfloatbyte、short、char、int、long、floatdoubledouble2、Java数据类型数据类型基本数据类型:基本数据类型:数据类型转换数据类型转换n 数据类型转换必须满足如下规则:n不能对boolean类型进行类型转换。n不能把对象类型转换成不相关类的对象。n 在把容量大的类型转换为容量小的类型时必须使用强制类型转换。n 转换过程中可能导致溢出或损失精度n int i = 8; byte b=(byte)i;

14、n (byte)255 = -1(byte)0 x5634 = 0 x34n 浮点数到整数的转换是通过舍弃小数得到,而不是四舍五入n (int)23.7 = 23(int)-45.89f = -452、Java数据类型数据类型基本数据类型:基本数据类型:数据类型转换数据类型转换2.6 字符串及其与数值的转换字符串及其与数值的转换 字符串类型,用String表示,它不是基本类型。 例如:“abcd”、“123”、“张三”。 这3个字符串的有效字符个数(字符串长度)分别是4、3和2 声明字符串变量str,同时把字符串常量 abcd 赋给str: String str = abcd; 一对英文双引号

15、,是字符串常量的定界符。 字符串长度可通过方法length()求出,例如: str.length()为4 空串,表示为。空串的长度为0。 把字符串转换为int型和double型例: int i = Integer.parseInt(168); double d = Double.parseDouble(3.14); 把数值转换为字符串的方法是String.valueOf。例如: String s = String.valueOf(28.9);【例2-1】编程,把字符串转成数值后相加,最后输出结果。 class Example1 public static void main(String ar

16、gs) String s1=12.3, s2=4;double d1, d2, d3;d1 = Double.parseDouble(s1);d2 = Double.parseDouble(s2);d3 = d1 + d2;System.out.println(String.valueOf(d3);/System.out.println(d3);2.7 2.7 算术运算符及算术表达式、算术运算符及算术表达式、字符串连接符字符串连接符 二元算术运算符有5个:加、减、乘、除、求余:+ - * / % 两个整数相除是整除,结果只取整数(并非四舍五入)。 例如:5 / 2,的值为2 求余也叫取余、取模

17、,其运算符是%。例: int remainder = 5 % 2; double remainder2 = 5 % 1.8; 结果分别为1和1.4。 注意:double和float型数据,除法运算允许除数为零,结果为Infinity(无穷大)。也允许这种类型的零(如0.0)除以零而不出现语法错误,但结果为NaN(非数字)。 字符串连接运算符字符串连接运算符+ 当含有字符串操作数,运算符+将前后操作数的字符串首尾相接串联在一起。 串接表达式的值是字符串。例如:System.out.println(12 + 34);System.out.println(12 + 34);double x = 4.

18、8;System.out.println(x= + x); 又如: double x = 4.7;double y = 2.4; double xPlusY = x + y; System.out.println(x + + + y + = + xPlusY); 输出结果为:4.7+2.4=7.12.8 赋值运算符、赋值表达式及赋值语句 赋值表达式语法: 变量 = 表达式 赋值运算符(赋值号)左边一定是变量,赋值号右边可为各种类型的表达式,包括常量,但类型要与左边变量兼容。 赋值表达式的值就是左边变量的值。 例如:double d;System.out.println(d = 4.7 + 2.

19、4); /值为7.1String str = “123” + String.valueOf(d); /值为1237.1 在声明变量的同时,可赋初值给变量。语法:数据类型 变量 = 表达式; 注意:赋值号=不能当成等号。 由赋值表达式后面加上英文分号,就构成了赋值语句。 2.9 运算符的优先级与结合性运算符的优先级与结合性 优先级:不同的运算符具有不同的运算次序。 如:先乘除、后加减。 可采用圆括号来改变运算符的执行次序。如:a = (b + c) * d 同等优先级的运算符通过结合性控制运算顺序。例:4 / 2 * 6 运算符结合性:从左到右为左结合, 从右到左为右结合。 一般地,算术、关系等

20、二元运算符是左结合的,而一元、三目条件和赋值运算符则是右结合的。 赋值运算符的右结合例:int a, b, c, d;a = b = c = d = 18; /相当a = (b = (c = (d = 18);Java运算符及其优先级运算符及其优先级 高低运算符类别运算符1 1基本基本() .() .2 2一元一元+ - ! + - new+ - ! + - new3 3乘、除、求余乘、除、求余* * / % / % 4 4加减加减+ - + - 5 5移位移位 6 6关系和类型检测关系和类型检测 = instanceof = instanceof7 7相等、不相等相等、不相等= != = !

21、= 8 8逻辑与、按位与逻辑与、按位与& & 9 9逻辑异或逻辑异或 1010逻辑或、按位或逻辑或、按位或| | 1111条件逻辑与条件逻辑与& & 1212条件逻辑或条件逻辑或| | 1313三目条件运算三目条件运算? : ? : 1414赋值赋值= += -= = += -= * *= /= %= &= |= = = /= %= &= |= = = = =2.10 自增和自减运算符 整型、浮点型等变量可进行自增、自减运算,即加1、减1操作。 运算符+和-均是一元的,又分前、后自增,前、后自减。如:+x x+ -x x- 【例2-2】编程,测试自增自减运算。int a = 2, b; double x = 3.5, y;+a; /a=3-x; /x=2.5System.out.println(a); /3System.out.println(x);

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论