第3章Java基本数据类型.ppt

上传人:本田雅阁 文档编号:3426167 上传时间:2019-08-24 格式:PPT 页数:47 大小:340.04KB
返回 下载 相关 举报
第3章Java基本数据类型.ppt_第1页
第1页 / 共47页
第3章Java基本数据类型.ppt_第2页
第2页 / 共47页
第3章Java基本数据类型.ppt_第3页
第3页 / 共47页
第3章Java基本数据类型.ppt_第4页
第4页 / 共47页
第3章Java基本数据类型.ppt_第5页
第5页 / 共47页
点击查看更多>>
资源描述

《第3章Java基本数据类型.ppt》由会员分享,可在线阅读,更多相关《第3章Java基本数据类型.ppt(47页珍藏版)》请在三一文库上搜索。

1、第3章 Java基本数据类型,31 Java程序基本组成元素 32 数据类型 33 变量与常量 34 运算符与表达式,本章要点:,熟练掌握标识符的命名规则,关键字和三种注释方式 掌握Java的基本数据类型和它们的用法 掌握变量的声明、初始化和引用规则 掌握Java的运算符及它们之间的优先关系,3.1 Java程序基本组成元素,单纯从程序的语法组成来看,一个Java程序是由: 空白分隔符、 标识符、 关键字、 分隔符、 注释、 运算符、 常量等组成。,3.1 Java程序基本组成元素,/ JavaExample.java / author:Panhao public class JavaExam

2、ple public static void main (String args ) int xLen,xWid,area; xLen = 7; xWid = 9; area=xLen * xWid; System.out.println(“the area is:”+area); ,3.1 Java程序基本组成元素,标识符用来表示类名,变量名、数组名、方法名等名称。 Java标识符只能由以下四类字符组成: 26个大写英文字母(AZ)和26个小写英文字母(az) 数字(09) 下划线(_) 美元符号($) 并且标识符中的第一个符号必须是英文字母、下划线或者美元符号,数字不能作为标识符的开头字符

3、。,3.1 Java程序基本组成元素,以下哪些是合法的标识符? HelloJavaWorld _xy3c $histk Ad_gs Hello&Java Xy-3c 3histk Ad gs,HelloJavaWorld _xy3c $histk Ad_gs,关键字,又称为保留字,是Java语言中由系统规定的标识符,其含义和用法由系统事先规定具有专门的意义和用途,不能当作一般的标识符使用。 abstract break byte boolean catch case class char continue default double do else extends false final f

4、loat for finally if import implements int interface instanceof long length native new null package private protected public final return switch synchronized short static super try true this throw throws thread transient void while,要记忆!,分隔符,分隔符用来分隔和组合标识符,辅助编译程序阅读和理解Java源程序。分隔符分为两类:没有意义的空白符,拥有确定含义的分隔符

5、。 空白符在Java程序中的作用是分隔标识符,包括以下四种: 回车 换行 制表符Tab键,分隔符,普通分隔符也用来分隔和区分程序中的不同成分,但是它在程序中有确定的含义。Java的普通分隔符有以下四种: 大括号:用来标明类体范围、方法体范围、复合语句和数组成员的初始化 分号;:用来标志Java语句的结束 逗号,:用来分隔方法定义中的多个参数,以及分隔相同类型的多个变量的定义。 冒号::用来说明语句的标号,用在程序语句转移中。,注释,Java语言的注释有三种形式: 单行注释:/abc 多行注释:/*abc */ 文档注释:/* abc*/ 注:SUN公司的J2SDK中的javadoc软件可以识别

6、程序中的文档注释内容(/* */),并自动从程序中提出注释内容,形成程序文档。,Javadoc参考文献,Code Conversion: SUN 推荐的书写 Java 程序文档的格式和规范 http:/ 包括如何命名(文件,类,方法),各种语句的格式,文档的写法。,3.2 数据类型,问题:在C语言中,存在数据类型,在Java中,也存在数据类型,那么,为什么要有数据类型呢?,1.数据类型用来说明常量、变量和表达式的性质和所占内存的大小。 2.Java的基本数据类型长度是固定的,可以跨平台自由移植。(c语言的基本数据类型根据平台的不同会有所参别),3.2 数据类型,与C语言数据类型的比较,Java

7、的数据类型的长度固定,可跨平台自由移动,C语句的基本数据类型会根据平台的不同有所改变; Java的数据类型:基本数据类型、类、接口等类型 C语言数据类型:基本数据类型与组合数据类型 两种语言的基本数据类型也有区别。,基本类型:在Java语言中,基本数据类型的长度是固定的,不依赖于具体的计算机硬软件平台环境,这使得Java语言具有良好的跨平台特性和可移植性。,数据类型 所占位数 数的范围 char 16 0 65535 byte 8 -2727-1 short 16 -215215-1 int 32 -231231-1 long 64 -263263-1 float 32 3.4e038 3.4

8、e038 double 64 1.7e308 1.7e308,3.2 数据类型,常量 用文字串来表示,具有不同的类型,其定义格式为: final Type varName = value , varName =value ; 变量 程序中的基本存储单元,其定义包括变量名、变量类型和作用域几个部分,定义格式为: Type varName = value , varName =value ; 作用域:指可访问变量的一段代码,在程序中不同的地方声明的变量具有不同的作用域:局部变量、类变量、方法参数、例外处理参数。在一定的作用域内,变量名必须唯一。,3.3 变量与常量,常量,赋值后不能更改的值 fin

9、al double SALES_TAX = 6.25;,C语言如何定义常量? #define PAI 3.1415926,变量,变量的属性 变量标识、变量数据类型、变量作用域 变量的声明: 如:float f,g; float f=20f; 变量的作用域:局部变量的作用域为定义点到代码块的结束 变量的默认值:局部变量 请删除例3-1的第9行k=9870,在编译运行程序,出现什么问题?请总结局部变量的默认值规则。 赋值操作时的变量类型转换(L/F),整型,整数包括字节型byte、短整形short、整形int和长整形long四种类型。 长整数的表示方法为在数值后面添加一个字母L(或l)。 例如:4

10、56l,189450L,5L,整型数据byte, short, int, long,整型常量 1. 十进制整数 如123,456,0 定义:final int A = 123; 2. 八进制整数 以0开头,如0123表示十进制数83,011表示十进制数9。 3. 十六进制整数 以0x或0X开头,如0x123表示十进制数291,0X12表示十进制数18。,整型数据byte, short, int, long,整型变量 类型为byte、short、int或long,byte在机器中占8位,short占16位,int占32位,long占64位。 整型变量的定义如: int x=123; /指定变量x

11、为int型,且赋初值为123 byte b = 8; short s = 10; long y = 123L; long z = 123l;,浮点型,Java语言共有两种浮点类型:单精度类型float和双精度类型double。 浮点型数据只采用十进制数表示,其表示方式可以为小数和指数两种形式。为了区分单精度数和双精度数,在单精度数值后面必须添加字符f(或F),双精度数后面添加字符d(或D),或者不添加任何字符。小数形式的浮点数表示如下: 35.14f,4.678f,-0.675f,78.09F,45.789d,78.09,-0.675D,指数形式的浮点数中必须包含指数部分,指数部分由字符e(或

12、E)和一个带符号数组成,具体实例表示如下: 0.45e45f,4.795E7f,7.09e8d,5e43,8.706E4D,浮点型,实型常量 1. 十进制数形式 由数字和小数点组成,且必须有小数点,如0.123, .123, 123.,123.0 2. 科学计数法形式 如:123e3或123E3,其中e或E之前必须有数字,且e或E后面的指数必须为整数。 实型变量 类型为float或double,float在机器中占32位,double占64位。实型变量的定义如: float x=0.123; /指定变量x为float型,且赋初值为0.123 double y = 0.123F; double

13、z = 0.123f;,字符型,字符型数据表示单个Unicode编码中的字符,Unicode是一种新的国际标准编码方案,每个Unicode字符占用16个比特位,即两个字节的内存空间,它包含的信息量比一个字节编码的ASCII标准码多了一倍。 字符型常数的表示有两种: 为用单引号括起来的字符。例如: A 7 u0041 转义符: b:退格 r:回车 n:换行 “:双引号 :反斜杠,字符型,Unicode编码通常采用16进制编码方案表示,范围从u0000到uffff。转义符u是Unicode编码的前缀,表示这是一个Unicode编码。,字符常量 字符常量是用单引号括起来的一个字符,如a,A; 字符型

14、变量 类型为char,它在机器中占16位。字符型变量的定义如: char c=a; /指定变量c为char型,且赋初值为a,布尔型,布尔型数据用于逻辑测试功能,主要用在选择语句和循环语句中,用于判断条件是否成立,从而决定下步的操作。布尔型数据只有两个值:true和false,分别表示逻辑真和逻辑假。,C语言的布尔型常量如何表示?,数据类型转换,隐式类型转换 整型、实型、字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级: 低-高 byte,short,char int long float double,操作数1类型 操作数类型 转换后的类型 byt

15、e、short、char int int byte、short、char、int long long byte、short、char、int、long float float byte、short、char、int、long、float double double,如果从高级转换成低级,则需要强制类型转换,但会导致溢出或精度下降。,类型转换,强制类型转换会缩小值的范围(“chops it down”) byte num1 = 53; byte num2 = 47; long num3; num3 = (num1+num2); /No data loss int myInt; long myLo

16、ng = 99L; myInt = (int) (myLong); /No data loss int myInt; long myLong = 123422222222; myInt = (int) (myLong); /Number is chopped,混合运算:类型转换,分析下面代码段中f2的值,并编写程序进行验证。 float f1=2.5,f2; int a=7,b=2,c; f2=f1+a/b; c=a/b; 打印f2和c,编程实践,声明并输出各种基本类型变量值。 a,byte: 120 b,short:76 (8进制值) c,int: 1998 d,long:1ff0 (16进

17、制值) e,float:0.24 f,double:7.4e3 g,boolean:false h,char:h 重新对a赋值为160,编译运行,出现什么问题?请解释说明。,3.4 运算符与表达式,运算符 算术运算符: +,*,/,%,+, 关系运算符: ,=,&,|, 赋值运算符: =,及其扩展赋值运算符如+=,=,*=,/=等。 条件运算符: ?: 其它:包括分量运算符 ,下标运算符 ,实例运算符instanceof,内存分配运算符new,强制类型转换运算符 (类型),方法调用运算符 () 等。 由于数据类型的长度是确定的,所以没有长度运算符sizeof。,赋值运算符,赋值运算符作用是将右

18、边表达式的值赋给左边的变量。表现形式为: vname = expression 例如:y = 4; y *= 5; 赋值表达式右边的表达式也可以是一个赋值表达式,这样的赋值表达式遵循右结合规律。 例如:x = y = 7 例:Assign. java,算术运算符,算数运算符对数值型数据(整型数据和浮点型数据)进行运算。 一元运算符:“”、 “”,和 “”三种; 二元运算符:“”、“”、“*”、“/”,“%”五种。 例:Compute1.java,字符串连接运算符,Java 中对运算符“+”进行了重载(就是对同一个运算符赋予了两种以上的含义,在不同的场合可以标记不同的操作。)字符串连接运算符的操

19、作有两种情况: 字符串+字符串 字符串+基本数据类型数据或对象 例如 “hello”+” world”结果为“hello world” int c=100; “c=”+c的结果为“c=100”,C 语言如何处理?,实战演习,分析程序段的结果: int a=1,b=10,c=5,d; d=a+*b; System.out.println(“a=”+a+ “: d=”+d); d=+a%c; System.out.println(“a=”+a+“ :d=”+d); 请用程序验证。,关系运算符,关系运算用来比较两个数据之间的关系,并产生一个布尔型值true或者false。 关系表达式经常用在条件判断

20、语句和循环条件判断中. 例:Comparing.java,逻辑运算符,逻辑运算是用来在布尔型数据之间进行比较的运算,运算的结果仍为布尔型值。逻辑运算常用来连接关系表达式。 &与&,|与|的区别 boolean b = (xy) & (+xy) & (+xy) 例:Logic.java,位运算符,位运算是对整数按其二进制位进行运算,运算结果仍是整数。,按位逻辑运算,令x=7,y=3,对它们进行逻辑运算,具体为: 0111 0111 0111 & 0011 | 0011 0011 0011 0111 0100 运算结果为:7&3 = 3,7|3 = 7,73 = 4。 LogicBit.java,

21、算术移位运算,算数左移运算符()和算术右移运算符()进行移位运算时,按照补码移位规则进行,即左移时,空位补0;右移时,空位补符号位,正数补0,负数补1。 无符号右移运算符()表示无论操作数是负数还是正数,移位时空位补0。 ArithShift.java,其它运算符,1.复合赋值运算符,其他运算符,2.条件运算符 条件运算符是三元运算符,可以代替某些if-else语句。条件运算符的一般形式为: exp1? exp2 : exp3 例: int x = 5, z = 7; Y= xz?x:z;,其他运算符,3.对象运算符 对象运算符为instanceof,用来测试一个对象是否属于某个指定类(或其子

22、类)的实例,如果是,返回结果true,否则返回结果false。 例如: boolean b = myFrameInOut instanceof FrameInOut;,Java运算符和表达式,运算符的优先次序 1) . , , () 9) & 2) + , - , ! , , instanceof 10) 3) new (type) 11) | 4) * , / , % 12) & 5) + , - 13) | 6) , , , = , = , =,表达式 表达式是由操作数和运算符按一定的语法形式组成的符号序列。 一个常量或一个变量名字是最简单的表达式,其值即该常量或变量的值; 表达式的值还可以用作其他运算的操作数,形成更复杂的表达式。 例: x num1+num2 a*(b+c)+d 3.14 x=(y+z) x&y|z,Java运算符和表达式,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1