第3次数据类型、标识符、直接量、变量_第1页
第3次数据类型、标识符、直接量、变量_第2页
第3次数据类型、标识符、直接量、变量_第3页
第3次数据类型、标识符、直接量、变量_第4页
第3次数据类型、标识符、直接量、变量_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

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

文档简介

1、12.5 Java2.5 Java程序的基本数据类型程序的基本数据类型数据类型数据类型决定决定了参与操作的变量、常量和表达式了参与操作的变量、常量和表达式的的取值类别取值类别、取值范围取值范围以及以及能够实施的操作能够实施的操作行为。行为。intint i i=3;=3;char char c c=A;=A;JavaJava数据类型划分数据类型划分简单数据类型包括:布尔类型:boolean字符类型:char整数类型:byte, short, int, long浮点类型:float,double复合数据类型包括:class(类)interface(接口)数组3表表2-1 Java2-1 Java

2、语言的基本数据类型语言的基本数据类型数据类型数据类型占用二进制位数占用二进制位数取值范围取值范围默认值默认值booleanboolean(布尔型)(布尔型) 8 8位位true或或falsefalsefalsecharchar(字符型)(字符型)1616位位u0000uffff(065535)u0000u0000bytebyte(字节型)(字节型)8 8位位-128127(-27(27-1)0 0shortshort(短整型)(短整型)1616位位-3276832767(-215(215-1)0 0intint(整型)(整型)3232位位-21474836482147483647(-231(2

3、31-1)0 0longlong(长整型)(长整型)6464位位-92233720368547758089223372036854775807(-263(263-1)0 0floatfloat(单精度浮点(单精度浮点型)型)3232位位 1.4E-45f 3.4028235E+38f0.0f0.0fdoubledouble双精度浮点型双精度浮点型6464位位 4.9E-324 1.7976931348623157E+3080.00.04booleanboolean(布尔)(布尔) 只有只有“true”true”和和“false”false”两个取值,分别代两个取值,分别代表表“真真”和和“假假

4、”。布尔型变量的定义如:布尔型变量的定义如:booleanboolean b=true; b=true;或:或:booleanboolean b=5060; b=5060;注意:注意:布尔类型的变量布尔类型的变量不能不能够够与与任何任何其他类型其他类型进行相进行相互的类型互的类型转换转换操作。在操作。在C C语言中,语言中,0 0可当作可当作falsefalse使用,使用,非零整数可当作非零整数可当作truetrue使用,但在使用,但在JavaJava中不允许。中不允许。booleanboolean(布尔)(布尔)l例如:5if(a!=0) a+=10;else a-=10;if(a) a+=

5、10;else a-=10;for(int i=10;i;i-) i-;for(int i=10;i!=0;i-) i-;6charcharvJavaJava语言规定,字符采用语言规定,字符采用UnicodeUnicode编码,每个字符编码,每个字符占用占用两两个字节。个字节。C C语言采用语言采用ASCIIASCII编码,每个字符编码,每个字符占占一一个字节。个字节。v可以表示可以表示65 53665 536个字符个字符。vASCIIASCII字符集是字符集是UnicodeUnicode字符集的一个子集字符集的一个子集,并且,并且在这两个字符集中,前在这两个字符集中,前128128个编码所对

6、应的字符完个编码所对应的字符完全相同,只是每个字符占用的二进制位数不同。全相同,只是每个字符占用的二进制位数不同。7bytebyte、shortshort、intint、longlong以下以下4 4种数据类型都属于种数据类型都属于整型数值类型整型数值类型。bytebyte 1 1个字节个字节short 2short 2个字节个字节 int 4int 4个字节个字节long long 8 8个字节个字节注意:注意:Java语言中所有整数型表示的语言中所有整数型表示的均为有符号数均为有符号数,没有没有C语言中的语言中的无符号(无符号(unsigned)整数型。)整数型。8floatfloat、d

7、oubledoubleqfloat float 单精度单精度 3232位位qdouble double 双精度双精度 6464位位qJavaJava语言中的浮点数值表示遵循语言中的浮点数值表示遵循IEEE754IEEE754标准标准。它不仅包括它不仅包括正零、负零、正无穷大、负无穷正零、负零、正无穷大、负无穷大大和一个特别的表示和一个特别的表示非非法法数值数值的的符号符号NaNNaN。浮点型浮点型 举例举例9double d=1e308;/1*10308System.out.print(overflow prodeces infinity:); System.out.println(d+*10

8、=+d*10);上溢上溢overflow prodeces infinity:1.0E308*10=Infinity d=1e-305*Math.PI;System.out.println(gradual underflow:+d);for(int i=0;i4;i+) System.out.print( +(d/=100000);下溢下溢gradual underflow:3.141592653589793E-3053.1415926535898E-310 3.141592653E-315 3.142E-320 0.0浮点型浮点型 举例举例10System.out.print(0.0/0.0

9、 is Not-a-Number:); d=0.0/0.0; System.out.println(d);产生非数值产生非数值NaN0.0/0.0 is Not-a-Number:NaN System.out.print(cast to int rounds toward 0:); d=12345.6; System.out.println(int)d+ +(int)(-d);double转转intcast to int rounds toward 0:12345 -12345112.6 2.6 标识符、注释、直接量、变量和常量标识符、注释、直接量、变量和常量 【标识符标识符】 Java Ja

10、va 的标识符由的标识符由字母字母、数字数字、_ _和和$ $组成,长度组成,长度不限。其中字母可以是大写或小写的英文字母,不限。其中字母可以是大写或小写的英文字母,数字为数字为 0 0 到到 9 9。注意:注意:1.1.标识符区分大小写标识符区分大小写。TestTest和和testtest不同;不同;2.2.标识符的标识符的第一个字符第一个字符必须为必须为字母字母、( (_ _) )或或( ($ $) )符号。符号。3.3.用户自己定义的标识符不能与用户自己定义的标识符不能与JavaJava语言中提供的关键字语言中提供的关键字与常量相同与常量相同12【关键字关键字】 又称保留字,是又称保留字

11、,是 Java Java 语言规定了特定含义的语言规定了特定含义的标识符标识符。用户只能按照系统规定的方式使用,。用户只能按照系统规定的方式使用,不能自行定义。不能自行定义。关键字一律关键字一律用小写字母用小写字母表示。表示。Java Java 中的关键字有中的关键字有 5050个,按用途划分为:个,按用途划分为:数数据类型、语句、据类型、语句、修饰、方法、类、接口、包修饰、方法、类、接口、包,并保留了并保留了constconst和和 gotogoto。13表表 2-2 Java2-2 Java语言的关键字语言的关键字abstractcontinuefornewswitchassertdefa

12、ultgotopackagesynchronizedbooleandoifprivatethisbreakdoubleimplementsprotectedthrowbyteelse enumimportpublicthrowscaseenuminstanceofreturntransientcatchextendsintshorttrycharfinalinterfacestaticvoidclassfinallylongstrictfpvolatileconstfloatnativesuperwhile标识符举例标识符举例l判断以下字符串哪些是合法的Java标识符。lidentifier,

13、2mail, room#, $change ,userName,User_Name,_sys_val, class, a-class,su,super14JavaJava标识符命名规范标识符命名规范可读性好,可读性好,“见名知义见名知义”;包名包名:小写英文字母小写英文字母;如:;如:“firstapplication”;类名、接口名类名、接口名:每个单词的首写字母都要大写每个单词的首写字母都要大写,如:,如:“ImageSprite”方法名方法名:动词或动词短语动词或动词短语,第一个单词的首字母小写,其,第一个单词的首字母小写,其他单词的首字母大写,如:他单词的首字母大写,如:getName

14、()变量名变量名:第一个单词的首字母小写第一个单词的首字母小写,其他单词的首字母大其他单词的首字母大写写,尽量,尽量不不要要使用使用_和和$,如:,如:myWidth常量名常量名:每个字符都为大写每个字符都为大写,单词之间用,单词之间用下划线(下划线(_)分隔,分隔,如:如:MAX_VALUE15标识符命名规范举例标识符命名规范举例l根据标识符命名规范,判断以下标识符所表示的类型(类名、方法名、变量名和常量名类名、方法名、变量名和常量名): MIN_LENGTH; Student; student; MathBook; testClass; run; getNumber 1617 注释注释是为

15、源程序增加必要的解释说明的内容,是为源程序增加必要的解释说明的内容,其目的是提高程序的可读性,书写注释是编写其目的是提高程序的可读性,书写注释是编写程序的良好习惯。程序的良好习惯。JavaJava中有三种形式的注释:中有三种形式的注释: / / 注释部分注释部分 / /* * 注释部分注释部分 * */ / / /* * * 注释部分注释部分 * */ / 【注释注释】程序注释程序注释文档注释:文档注释:18【直接量直接量】n整型直接量整型直接量:十、八、十六进制:十、八、十六进制n实型直接量实型直接量:doubledouble、floatfloatn字符型直接量字符型直接量:单引号括起来:单

16、引号括起来n布尔型直接量布尔型直接量:true true 和和 falsefalsen字符串型直接量字符串型直接量:双引号括起来:双引号括起来相当于相当于C语言中的常量语言中的常量整型直接量整型直接量十进制整数: 如123,456,0。默认的数据类型为int,如要赋给int型变量,那数值应该在int的取值范围,例如:int a=123;问:能否将一个十进制整数直接赋给长整型变量呢?如:long b=123;问:long l=-9876543210 ;是否正确?如果要表示长整型的数值,应以l或L结尾,如: long l=-9876543210 L;19可以可以。整数类型整数类型中中取值取值范围较

17、小范围较小的的变量或直接变量或直接量量可可以以直接赋直接赋值(隐式转换)值(隐式转换)给取值范围给取值范围较大的变量较大的变量。相反地相反地,数据类型,数据类型取值范围较大的变量或直接量取值范围较大的变量或直接量不能不能直接赋值给取值范围较小直接赋值给取值范围较小的变量,需要进行的变量,需要进行强制类型转换(显式转换)强制类型转换(显式转换)。不正确不正确。因为。因为-9876543210 、 =、=、其他运算:其他运算:?:?:、赋值运算符、赋值运算符、( )( )、 、newnew检测某个对象是否属于某个类检测某个对象是否属于某个类 instanceof(instanceof(对象对象)

18、)算术运算符与算术表达式算术运算符与算术表达式双目双目运算符:有两个操作数两个操作数的运算符 + - * / %单目单目运算符:只有一个操作数一个操作数的运算符+ - + -29算术运算符算术运算符 说明说明l操作含义和基本用法与C语言中相应的运算符相同,但有一些特别之处。(1)5个双目运算符的运算对象类型可以是byte、short、int、long、float、double和char。%的运算对象可以是整型整型可以是浮点浮点型,既可以是正数正数也可以是负数负数。(2) 整数整数被0整除整除或求余求余数非法操作非法操作,抛出ArithemticException。30算术运算符算术运算符 说明说明(3) 运算结果类型:运算结果类型:如果参与运算的两个运算对象两个运算对象属于同一同一个类型,则结果也是这种类型也是这种类型。如果两个运算对象的类型都是整型整型byte、short、int、long)或者浮点型浮点型,则计算结果结果为取取值范围较大值范围较大那种类型。例如:31/3的的Unicode码为码为51;int a=1;long b=2L;char c=3; double d=4.0;float f=5.0f;System.out.print(a+c)+n+(b+c)+n+(c+d)+n+(a+f);如果参与如果参与/ /运算的两个操作对象都是整数型,则运运

温馨提示

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

评论

0/150

提交评论