您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 招聘面试 > Java编程语言基础知识
2.Java编程语言基础知识重庆大学计算机学院杨瑞龙yrlong@163.comCSC,ChongqingUniversity主要内容标识符和保留字数据类型类型转换运算符和表达式控制语句CSC,ChongqingUniversity标识符以字母,下划线(_),美元符号($,或者其它货币符号)开始的一个字母序列;后续字符可以是字母,数字,下划线,美元符,Unicode字符集中大于0xC0的所有符号,运算符除外。大小写敏感,没有最大长度限制不能与保留字重名实际编程序中,甚至标识符完全可以用中文,比如可以把一个变量的名字命名为int中文=1;CSC,ChongqingUniversity标识符举例合法的标识符identifieruserNameUser_Name_sys_val$change不合法的标识符2mailroom#classCSC,ChongqingUniversity练习题Whichdeclarationsofidentifiersarelegal?A.$personsB.TwoUsersC.*pointD.thisE._endlineCSC,ChongqingUniversity保留字具有专门的意义和用途,不能当作一般的标识符使用,这些标识符称为保留字(reservedword),也称为关键字:都是小写,比如true,false,null等,不像c++中都是大写的。注意和c++的保留字的区别,增加了哪些,又去掉了哪些。比如在java中没有sizeof运算符,因为数据类型的长度与平台无关。CSC,ChongqingUniversity保留字2-1用于数据类型的保留字byteshortintlongfloatdoublecharboolean用于流程控制语句的关键字ifelseswitchcasedefaultdowhileforbreakcontinue方法、类型、变量的修饰关键字privatepublicprotectedfinalstaticabstractsynchronizedvolatileCSC,ChongqingUniversity保留字2-2异常处理关键字trycatchfinallythrowthrows对象相关关键字newextendsimplementsclassinstanceofthissuper字面值常量关键字falsetruenull方法相关关键字returnvoid包相关关键字packageimportCSC,ChongqingUniversity练习题WhichofthefollowingareJavakeywords?1)NULL2)new3)instanceOf4)wendCSC,ChongqingUniversity注释单行注释//注释内容……多行注释/*注释文本……*/文件注释文件注释用来产生一个Html文件,可以使用Jdk提供的工具程序JavaDoc从源程序中提取这种注释,为程序提供文档说明。javadoc能识别注释中用标记@标识的一些特殊变量。文件注释以“/**”开头,遇到“*/”结束,在注释中每行以一个“*”开始。其格式如下。/**注释文本*注释文本*……*/CSC,ChongqingUniversity数据类型划分数据类型基本类型引用类型数值类型字符类型(char)布尔类型(boolean)整数类型(byte,short,int,long)浮点类型(float,double)类(class)接口(interface)数组图2-1Java语言的数据类型CSC,ChongqingUniversity数据类型数据类型的分类简单数据类型,复杂数据类型byte,short,int,long,float,doublechar,booleanclass,interface,数组数的范围,位长不支持c/C++中的指针类型,结构类型(struct)、联合类型(union),枚举类型(enum)CSC,ChongqingUniversity常量,变量常量用文字串表示,比如3,‘a’等通过final定义常量,finaltypeSpecifiervarName=value[,varName[=value]…];如finalinti=0;变量是java中的基本存储单元,包括变量名,类型,作用域等。inti=0,j=1;局部变量,类变量,方法参数,例外处理参数等。CSC,ChongqingUniversity简单数据类型-boolean类型布尔型数据只有两个值true和false,且它们不对应于任何整数值布尔型变量的定义如:booleanb=true;booleana=false;CSC,ChongqingUniversity简单数据类型-字符类型char字符常量字符常量是用单引号括起来的一个字符,如‘a’,‘A’;字符型变量类型为char,使用Unicode字符集它在机器中占16位,16位无符号型数据,其范围为0~65535。字符型变量的定义如:charc=‘a’;/*指定变量c为char型,且赋初值为'a’*/Java也提供转义字符,以反斜杠(\)开头,P13,比如\’表示单引号,\uxxxx,1到4位16进制表示的字符。charc=‘\u0061’;如何从字符转换到它的编码,可以用jdk提供的工具native2ascii.exe程序。举例,“中文”的unicode编码是:“\u4e2d\u6587”CSC,ChongqingUniversity简单数据类型-字符类型char(续)Java中的字符型数据不能用作整数,因为java不提供无符号整数类型,但是同样可以把他当作整数数据来操作(因为发生了类型转换)。例如:intthree=3;intone=‘1’;charfour=(char)(three+one);//four=‘4’CSC,ChongqingUniversity简单数据类型-整型数据数据类型所占位数数的范围byte8-27~27-1short16-215~215-1int32-231~231-1long64-263~263-1在定义时,long型数据要加后缀l或者L。CSC,ChongqingUniversity浮点型(实型)数据实型常量1.十进制数形式由数字和小数点组成,且必须有小数点,如0.123,.123,123.,123.02.科学计数法形式如:123e3或123E3,其中e或E之前必须有数字,且e或E后面的指数必须为整数。CSC,ChongqingUniversity浮点型(实型)数据实型变量数据类型所占位数数的范围float323.4e-038~3.4e+038double641.7e-308~1.7e+308注意:定义float时,需加后缀f或FCSC,ChongqingUniversity使用举例publicclassTest{byteb=21;shorts=256;inti=100000;longl=0xffL;doubled=0.7e-3;booleanb=false;}CSC,ChongqingUniversity练习题Whichofthefollowingarelegalstatements?1)floatf=1/3;2)inti=1/3;3)floatf=1.01;4)doubled=999d;CSC,ChongqingUniversity类型转换自动类型转换整型,实型,字符型数据可以混合运算。运算中,不同类型的数据先转化为同一类型,然后进行运算,转换从低级到高级;低---------------------------------高byte,short,char—int—long—float—doubleCSC,ChongqingUniversity自动类型转换规则操作数1类型操作数2类型转换后的类型byte、short、charintintbyte、short、char、intlonglongbyte、short、char、int、longfloatfloatbyte、short、char、int、long、floatdoubledouble注意:byte,short和char在一起运算时,首先转换为int类型进行运算。CSC,ChongqingUniversity思考题分析下面程序中的错误。byteb1=5;shorts1=6;shorts2;s2=b1+s1;答案:byte类型和short类型的数据进行运算时首先都转换为int类型。在第四行中就会发生赋值类型不匹配的编译错误。CSC,ChongqingUniversity强制类型转换高级数据要转换成低级数据,需用到强制类型转换,如:inti;byteb=(byte)i;/*把int型变量i强制转换为byte型*/提示:已知一个字符的编码,需要获取对应的字符时,一般可以通过类型转换实现。inti=65;charc;c=(char)i;CSC,ChongqingUniversity运算符和表达式与我们学过的C++是相同的。注意运算符的类型优先级参与计算的数的类型一些运算符的特殊用途。CSC,ChongqingUniversity运算符(按照操作数区分)一元运算符:++,--,+,-二元运算符:+,-,三元运算符:?:注:只列出了部分。CSC,ChongqingUniversity运算符(按照功能来分)1)算术运算符:+,―,*,/,%,++,――3+2;a-b;i++;--i;%求模运算的操作数可为浮点数2)关系运算符:,,=,=,==,!=count3;i==0;n!=-1;3)布尔逻辑运算符:!,&&,||flag=true;!(flag);flag&&false;CSC,ChongqingUniversity运算符(按照功能来分)4)位运算符:,,,&,|,^,~a=10011101;b=00111001;a3=11101000;a3=11110011a3=00010011;a&b=00011001;a|b=10111101;~a=01100010;a^b=10100100;注意,132等于多少,还有i32,它们的值等于多少?CSC,ChongqingUniversity运算符(按照功能来分)5)赋值运算符=,及其扩展赋值运算符如+=,―=,*=,/=等。i=3;i+=3等效于i=i+36)条件运算符?:result=(sum==0?1:num/sum);CSC,ChongqingUniversity运算符(按照功能来分)7)其它:包括分量运算符·,下标运算符[],实例运算符instanceof,内存分配运算符new,强制类型转换运算符(类型),方法调用运算符()等。System.out.println(“helloworld”);intarray1[]=newint[4];CSC,ChongqingUniversity练习题Whichofthefollowingwillcompilewithouterror?1)charc='1';System.out.println(c1);2)Integeri=Integer(1);System.out.println(i1);3)inti=1;System.out.println(i1);4)inti=1;System.out.println(i1);CSC,ChongqingUniversity表达式的类型表达式的类型由运算以及参与运算的操作数的类型决定,可以是简单类型,也可以是复合类型:布尔型表达式:x&&y||z;整型表达式:num1+num2CSC,ChongqingUniversity练习题GiventhefollowingclasspublicclassZeroPrint{publicstaticvoidmain(St
本文标题:Java编程语言基础知识
链接地址:https://www.777doc.com/doc-2878958 .html