版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第2章Java程序设计的基本概念主讲:肖敏电话:E-mail:第2章Java程序设计的基本概念数据类型和标识符2.12.2常量与变量2.3运算符与表达式2.4数据类型的转换2.1数据类型和标识符——数据类型Java数据类型类型分类基本数据类型所对应的类基本数据类型基本数据类型布尔型(Boolean)布尔型:boolean字符型(Char)字符型:char整数型(Integer)字节型:byte短整型:short整型:int长整型:long实(浮点)型(Float)单精度型:float双精度型:double复合数据类型类(Class)类:class接口(Interface)接口:interface数组(Array)
(1)当数据必须作为对象出现,例如:Vector类实现可增长的对象数组;(2)Integer作为int对应的封装器类,提供了许多的方法2.1数据类型和标识符——基本数据类型Java中定义了4类8种基本数据类型逻辑型(布尔型):boolean,1bit文本型(字符型):char,2byte=16bit整数型int字节型:byte,1byte=8bit短整型:short,2byte长整型:long,4byte,123L表示长整型数123浮点型单精度型:float,4byte,3.14F双精度型:double,8byte,1.23D2.1数据类型和标识符——基本数据类型Java中定义了4类8种基本数据类型逻辑型(布尔型):boolean,1bit文本型(字符型):char,2byte=16bit整数型字节型:byte,1byte=8bit短整型:short,2byte整型:int,4byte长整型:long,4byte,123L浮点型单精度型:float,4byte,3.14F双精度型:double,8byte,1.23D适用于逻辑运算,一般用于程序流程控制;数据只允许取值true和false,整型值和布尔值之间不能进行相互转换char类型表示单个字符,’a’,’A’等,’A’表示编码为65所对应的字符常量。Unicode编码的十六进制表示:范围\u0000到\uffff,\u03C0表示π表示特殊字符的转义序列符:\b表示退格,等同\u0008代码点:超出范围\u0000到\uffff之外的字符表示方法。转义序列名称Unicode值\b退格\u0008\t制表\u0009\n换行\u000a\r回车\u000d\”双引号\u0022\’单引号\u0027\\反斜杠\u005c2.1数据类型和标识符——标识符Java对各种变量、方法和类等要素命名时使用的字符序列称为标识符。Java标识符的命名规则Java标识符约定俗成的命名规范由字母、下划线“_”、美元符“$”或者数字构成;以字符、下划线“_”、美元符“$”打头;大小写敏感,长度无限制;不能包含空格、操作符、关键字,不能与Java自带的类、方法、对象同名。类和接口名:通常是名词,用一或多个英文单词表示,每个单词的首字母大写,例String、Graphics、Color、
等。方法名和变量名:第一个字母小写,如果有其他单词,则每个单词的第一个字母大写,如main()、println()、
setColor()。常量名(用关键字final修饰的变量):全部大写,如果由多个单词构成,则单词之间用_连接。包名:全部由小写字母构成。2.1数据类型和标识符——标识符合法的标识符和非法的标识符合法的标识符不合法的标识符HelloWorldHelloWorldDataClassDataClass#_98398.3$classclass2.1数据类型和标识符——关键字abstractbooleanbreakbytecasecatchcharclassconstfalsecontinuedefaultdodoubleelseextendsfinalfinallyfloatforgotoifimportimplementsintinstanceofinterfacelongnativenewnullpackageprivateprotectedpublicreturnshortstaticsynchronizedsuperthisthrowthrowstransienttruetryvoidvolatilewhileJava中一些赋以特定的含义,用做专门用途的字符串称为所有Java关键字都是小写英文goto
和const虽然从未使用,但也作为Java关键字保留。Java关键字2.2常量与变量常量常量在程序执行期间其值是不能发生变化,只能引用,不能赋值。变量变量形式的值是可以变化的,它代表内存中指定的存储单元。提供了数据存放信息的容器。既能引用又能赋值2.2常量与变量——常量常量值(文字常量、字面常量)整型常量值实型常量值字符型和字符串常量值布尔型常量值常量:用一个符号名代替常量值,先定义后使用常量的定义常量的使用十进制形式:123八进制形式:013,0123,-0789十六进制形式:0xFF,-0x100默认为int型,其后加l或L为长整型:1200L十进制形式:由数字和小数点构成,必须有小数点科学计数法形式,1.75e5,e之前必须有数字,e之后必须为整数默认双精度浮点型,69.7f或69.7F表示单精度浮点型字符常量:单引号引起来的一个字符,如’e’、’E’等转移字符:表示特殊字符的转义序列符,\b表示退格Unicode编码的十六进制表示:范围\u0000到\uffff,\u03C0表示π字符串常量:”e”,”E”,”abddk”,”Hello”常量的定义:利用关键字final声明一个常量常量命名约定:一般常量名用大写字母表示,如果常量名由多个单词构成,则单词之间用下划线连接例如:finaldoublePI=3.14152.2常量与变量——变量变量的本质及变量的命名变量的定义及赋值变量的作用域变量的默认值2.2常量与变量——变量的本质Java变量是程序中最基本的存储单元,本质是内存中的一小块区域,使用变量名来访问这块区域。因此,每一个变量使用前必须先申请内存(声明)、而后赋值(填充内容)、使用。值名称如果由多个单词组成,则首字母小写,其它单词首字母大写,其余均小写2.2常量与变量——变量定义及赋值Java程序中每一个变量都属于特定的数据类型,在使用前,必须先声明,声明的语法格式如下:typevarName;typevarName=value;typevarName1=value1,varName2=value2type为Java提供的4类8种基本数据类型,例如:inti=100;floatf=12.3f;doubled1,d2,d3=0.123;Strings=“Hello”;2.2常量与变量——Java变量的分类按被声明的位置分类局部变量声明位置:方法或语句块内部定义的变量(必须初始化)作用域:方法或语句块的内部成员变量声明位置:在方法外部、类的内部定义的变量作用域:作用域是整个类按所属的数据类型划分基本数据类型变量引用数据类型变量2.2常量与变量——变量的默认值Java基本数据类型的默认值数据类型默认值
byte0short0int0long0Lfloat0.0fdouble0.0dchar\u0000booleanfalse注意:Java对基本数据类型变量赋予默认值不适用于局部变量,局部变量必须自行赋初值。publicvoidmethod(){inti;intj=i+5;doubled=3.14;}2.3运算符和表达式赋值运算符和赋值表达式算术运算符和算术表达式关系运算符和关系表达式逻辑运算符与逻辑表达式复合赋值运算符位运算符和条件运算符运算符的优先级和结合性2.3运算符和表达式——赋值运算符和赋值表达式赋值运算符=赋值表达式变量名=表达式intwidth;width=3;length=width=3;对象数名称运算符运算规则运算对象表达式实例运行结果一元正+取原值整型(或)实型+3+3+3负-取负值-4-4-4二元加+加法4+599减-减法8-533乘*乘法
整型(或)实型4*93636除/除法7.0/23.53.5模%整除取余整型8%3222.3运算符和表达式——算术运算符和算术表达式算术运算符2.3运算符和表达式——算术运算符和算术表达式算术表达式★运算符不能相邻;★乘号不能省略;★括号必须成对出现;★表达式从左到右在同一基准并排书写;★要注意各种运算符的优先级别。参加运算的对象均为数值型数据,运算结果是数值型。**********表达式的书写中需注意的问题************2.3运算符和表达式——算术运算符和算术表达式+字符串连接运算符:加法自增、自减运算符:++和--publicclassHelloWorld{publicstaticvoidmain(String[]args){inta=3System.out.println("HelloWorld!");System.out.println(a+1);System.out.println('a'+1);System.out.println("a"+1);}}publicclassHelloWorld{publicstaticvoidmain(String[]args){inta=3;System.out.println(a++);
System.out.println(++a);}2.3运算符和表达式——关系运算符和关系表达式关系运算符都是双目运算,是用来比较两个运算量之间的关系,关系表达式的运算结果为逻辑量。若关系成立,结果为True;关系不成立,结果为False运算符含义优先级实例结果<小于所有关系运算优先级相同。低于算术运算的加“+”,减“-”运算,高于逻辑运算。15+10<20False<=小于或等于10<=20True>大于10>20False>=大于或等于‘b’>=‘a’True=等于‘b’=‘a’False!=不等于‘b’!=‘a’True数值型或字符型2.3运算符和表达式——逻辑运算符和逻辑表达式逻辑运算符逻辑非:!true=false,!false=true逻辑与:true&&true=true,其余为false逻辑或:false||false=false,其余为true判断是否为闰年判断三角形的形状自左向右运算,并遵循”短路原则”a&&b&&c:如果a为false,则表达式为falsea||b||c:如果a为true,则表达式为true2.3运算符和表达式——复合赋值运算符复合赋值运算符运算符用法举例说明+=a+=b等价于a=a+b-=a-=b等价于a=a-b*=a*=b等价于a=a*b/=a/=b等价于a=a/b%=a%=b等价于a=a%b2.3运算符和表达式——位运算符和条件运算符位运算符运算符说明用法举例&转换为二进制数字进行与运算1&1=1|转换为二进制数字进行或运算0|0=0,0|1=1^转换为二进制数字进行异或运算1^0=1,0^1=1~取相反数减1运算~100=-100-1=-101>>向右移位15>>1=715>>2=3<<向左移位3<<1=6,15<<1=302.3运算符和表达式——位运算符和条件运算符条件运算符是三元运算符,其语法形式为:<表达式>
?
e1
:
e2其中表达式值的类型为逻辑型,若表达式的值为真,则返回e1值;表达式值非真,返回e2值。inta,b,c;if(a>b)c=a;elsec=b;c=(a>b)?a:b;等价于2.3运算符和表达式——运算符的优先级和结合性运算符的优先级和结合性例子表达式求值时,按运算符优先级别由高到低的次序执行。同一个级别的按照从左到右次序进行计算(右结合运算符从右到左计算)a&&b||c等价于(a&&b)||ca+=b+=c等价于a+=(b+=c)等价于b=b+c;a=a+b2.4数据类型的转换——自动转换boolean类型不可以转换为其他的数据类型整型、字符型、浮点型的数据在混合运算中可以自动转换,转换原则如下:表示范围小的类型自动转换为表示范围大的类型多种类型的数据混合运算时,系统自动将所有数据转换成表示范围最大的那一种类型,而后进行运算。如果两个操作数有一个是double型,则另一个转换为double型否则,如果一个是float型,则另一个自动转换为float型否则,如果另一个是long型,则另一个自动转换为long型否则,两个操作数都转换为int型byteshortintlongcharfloatdouble2.4数据类型的转换——自动转换自动转换举例publicclassHelloWorld{publicstaticvoidmain(String[]args){floatf=1.23f;longl=345;System.out.println(f);System.out.println(l);}}2.4数据类型的转换——强制转换强制类型转换语法:(type)变量名取整运算doublex=9.997;intnx=(int)x;四舍五入取整运算doublex=9.997;intnx=(int)Math.round(x);publicclassTestConvert{publicstaticvoidmain(Stringarg[]){inti1=123;inti2=
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 经典名著读书心得10篇
- 2024年游戏角色设计合同保密及虚拟形象授权协议3篇
- 2024年样本:网络游戏虚拟物品交易服务合同
- 现代农业研学课程设计
- 2024年版快餐店加盟协议书3篇
- 2024年度第三方担保机构服务保障及责任合同3篇
- 武钢热轧板带钢课程设计
- 影视与课程设计
- 2024年热水循环系统安装协议3篇
- 2024年租赁合同(家具)
- 2025届广州市高三年级调研测试(零模)数学试卷(含答案)
- 整本书阅读《乡土中国》课件 2024-2025学年统编版高中语文必修上册
- 2025年“两新”领域超长期特别国债项目申报策略
- 2025礼品定制合同范本
- 医院消毒隔离制度范文(2篇)
- 2024年01月11026经济学(本)期末试题答案
- 烘干煤泥合同范例
- 寒假作业一年级上册《数学每日一练》30次打卡
- 组织学与胚胎学智慧树知到期末考试答案章节答案2024年中南大学
- 公路水运工程施工企业主要负责人和安全生产管理人员考核大纲及模拟题库
- 2024年中国邮政集团有限公司重庆分公司招聘笔试参考题库含答案解析
评论
0/150
提交评论