




已阅读5页,还剩49页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
数据类型和流程控制,教学基本要求,熟悉Java语言的基本数据类型理解Java基本数据类型的转换方式学会Java运算符的使用理解运算符的优先级,Java数据类型,在Java语言中,主要有两种类型的数据:基本类型和引用类型。相应地,也就有了两种类型的变量。,基本数据类型,基本数据类型是Java语言中预定义的、长度固定的、不能再分的类型,数据类型的名字被当作关键字保留。与其他大数的程序设计语言所不同的是,由于Java程序跨平台运行,所以Java的数据类型不依赖于具体计算机系统。,Java的基本数据类型,常量,常量是在程序运行中不变的量,是一个简单的值的标识符或名字,它们直接在Java代码中指定。Java支持3种类型的常量:数值常量布尔常量字符常量,1、数值常量,Java支持2种数值常量:常数常量和实数常量。,(1)整型常量,整型常量是最常用的常量,包括byte、short、int、long4种,它们都可以采用十进制、八进制、十六进制表示,其中byte、short和int的表示方法相同,而长整型必须数的后面加字母L或l。整型常量在用十六进制表示时用0 x开头。整型常量在用八进制表示时用0开头,(2)实型常量,实型常量可分为双精度和浮点两种类型。浮点数后面必须用F或f加以说明,双精度数、后面的D可以省略。,4、布尔常量,Java中的布尔常量属于boolean类型,它的值只能是true或false两种形式。与C/C+中的逻辑值不同的是,它不能代表整数,同时它也不是字符串,不能被转换成字符串常量。,3、字符常量,字符常量是由单引号括起来的单个字符,如:a、6等。字符常量是号的常量,占2个字节。Java语言使用16位的Unicode字符集。Java语言使用转义符表示一些有着特殊意义的字符如:n、t。,Unicode,Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。它为每种语言中的每个字符设定了统一并且唯一的二进制编码,以满足跨语言、跨平台进行文本转换、处理的要求。1990年开始研发,1994年正式公布。随着计算机工作能力的增强,Unicode也在面世以来的十多年里得到普及。,Java转义符,变量,变量为我们提供了一种访问内存中数据的一方法。,1、变量的命名,变量必须先定义后使用。变量的定义需要指出变量的类型、名称,还可以为其赋初值(初始化),一般格式为:类型变量名=初始值;例如:doubledi=0.34;可以在一个语句中声明多个变量,每个都具有相同的类型,各变量名之间用逗号分开。例如:intlength,width;,变量命名注意事项,变量名必须是一个合法的标识符。一个标识符是以字母或下划线或$符号开头的一串Unicode字符。中间不能包括空格。变量名必须不是一个关键字、布尔型字符或null。Java对变量名区分大小写。变量名必须在作用域中是惟一的。,数据类型的转换,数据类型转换是将一种类型的数据转变为另一种类型的数据。当表达式中的数据类型不一致时,就需要进行数据类型转换。类型转换的方法有两种:隐式类型转换和类型转换。,当一个容量小的类型转化为一个容量大的类型时,编译器会常常自动完成类型转换的工作。被称为隐式类型转换。当把一个容量较大的数据类型向一个容量较小的数据类型转换时,为了避免信息的丢失,编译不会自动完成这类转换,而必须由程序员使用显式类型转换。其格式为:(类型)表达式,/数据类型转换的示例publicclassTestConvertpublicstaticvoidmain(Stringargs)inti=200;longj=8L;j=i;i=(int)j;,运算符,用于对数据进行计算和处理,或改变特定对象的值。,按操作数的数目来分类,一元运算符二元运算符三元运算符,按对数据的操作结果分类,算术运算符关系运算符逻辑运算位运算符,1.算术运算符,例2.2算术运算的使用示例。publicclassArithmaticOppublicstaticvoidmain(Stringargs)inta=5+4;intb=a*2;intc=b/4;intd=b-c;intf=e%4;doubleg=18.4;doubleh=g%4/h=2.4;inti=3;intj=i+;intk=+i;System.out.println(“a=”+a);System.out.println(“b=”+b);System.out.println(“c=”+c);System.out.println(“d=”+d);System.out.println(“e=”+e);System.out.println(“f=”+f);System.out.println(“g=”+g);System.out.println(“h=”+h);System.out.println(“i=”+i);System.out.println(“j=”+j);System.out.println(“k=”+k);,算术赋值运算符,Java也用一种简写形式的运算符,在进行算术运算的同时进行赋值操作。被称为算术赋值运算符。、*、/、%,/算术赋值运算符示例publicclassTestOppublicstaticvoidmain(Stringargs)intx=3,y=4;x+=7-y;System.out.println(x);x*=7-y;System.out.println(x);,递增、递减运算符,Java提供了两快捷运算方式是递增运算符“”和递减运算符“”。对于“”和“”运算符而言,都有两个版本可供选用,通常将其称为前缀版和后缀版,前者是先进行本运算符运算,将自身值修改之后,再参与表达式中的运算。而后者是参与完所在表达式运算后,再将自身值修改。,/递增运算符和递减运算符的使用示例publicclassAutoIncpublicstaticvoidmain(Stringargs)inti=1;System.out.println(i:+i);System.out.println(+i:+i);System.out.println(i+:+i+);System.out.println(i:+i);System.out.println(-i:+-i);System.out.println(i-:+i-);System.out.println(i:+i);,关系运算符,关系运算符用于测试两个操作数之间的关系,形成关系表达式。关系表达式将返回一个布尔值。它们多用在控制结构的判断条件中。,Java的关系运算符,关系运算符的使用示例,/例2.4关系运算符的使用示例publicclassRelationalOppublicstaticvoidmain(Stringargs)floata=10.0f;doubleb=10.0;if(a=b)System.out.println(a和b相等);elseSystem.out.println(a和b不相等);,逻辑运算符,逻辑运算符用来进行逻辑运算。,Java逻辑运算符,/短路的示例publicclassShortCircuitstaticbooleantest1()System.out.println(test1);returntrue;staticbooleantest2()System.out.println(test2);returnfalse;staticbooleantest3()System.out.println(test3);returntrue;publicstaticvoidmain(Stringargs)if(test1(),位运算符,类似于C语言,Java也支持位运算。Java语言中的位运算总体来说分为两:按位运算和移位运算。,1.按位运算符,按位运算符允许操作两个整型数据中对应的单个的二进制位。按位运算会对两个自变量中对应的位执行布尔运算,并最终生成一个结果。Java中有4种按位操作符,它们是:按位与(if(2=(b1,几点说明,按位运算符可与等号联合使用,以便合并运算及赋值:“”、“”、“”。当操作数为布尔类型时,按位运算与逻辑运算有相同的效果。但这时不能进行按位“非”的操作按位运算在连续使用时没有“短路”的特征。,2.移位运算,移位运算符面向的运算对象也是二进制的“位”,用来处理整型数据。左移位运算符()能将运算符的左边运算对象向右移动右侧运算符的指位数。若值为正在最高位插0,若值为负在最高位插1。,无符号右移运算符,右移运算符使用“符号扩展”,无符号右移运算符,使用了“零扩展”,无论正负,都在最位插入0。这一运算符是C/C+所没有的。,/移位运算示例publicclassURShiftpublicstaticvoidmain(Stringargs)inti=4;ii1;System.out.println(i);,几点说明,char、byte或char类型的数据进行移位处理时,系统会自动将它们转换成int类型。int和long类型进行移位后数据类型仍然保持不变。移位运算也可与赋值符号组合使用,形成移位赋值运算符。=、=。,/移位运算示例publicclassURShiftpublicstaticvoidmain(Stringargs)inti=4;i=1;System.out.println(i);,其它运算符,1.赋值运算符,赋值是用等号运算符(=)进行的。它的意思是“取得右边的值,把它复制到左边”。右边的值可以是任何常数、变量或者表达式,左边必须是一个明确的、以命名的变量。,/赋值运算符示例classNumberinti;publicclassAssignmentpublicstaticvoidmain(Stringargs)Numbern1=newNumber();Numbern2=newNumber();n1.i=9;n2.i=47;System.out.println(1:n1.i=+n1.i+,n2.i=+n2.i);n1=n2;System.out.println(2:n1.i=+n1.i+,n2.i=+n2.i);n1.i=55;System.out.println(3:n1.i=+n1.i+,n2.i=+n2.i);,2.三元运算符,三元运算符(?:)可以用来代替if-else结构。但它最终会生成一个值,表达式为:布尔表达式?表达式1:表达达2若布尔表达式为真,就计算表达式1;否则计算表达式2。,/三元运算符示例publicclassternarypublicstaticvoidmain(Stringargs)inti=15;System.out.println(i10?i小于10:i不小于10);,3.instanceof运算符,用于判断某个对象是不是属于某一个特定类。在运算符左侧的对象是右侧类的实例时,它将返回true。,/instanceof运算符示例publicclass
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度智能餐饮配送与顾客满意度综合提升专项服务合同
- 2025年企业员工股权激励与业绩提升同步协议
- 2025年绿色建筑装修工程安全监管及责任界定合同
- 2025年省级住房和城乡建设厅施工安全监管与咨询服务合同
- 2025年绿色建材供应链金融合作担保合同
- 健身服务合同协议
- 2025年校园安全应急处理能力提升与保安服务合作协议
- 2025年去中心化金融平台区块链技术知识产权独占许可协议
- 2025年鞋类制造专用材料批发供应与售后服务合同
- 2025年智能包装设计定制购销合同:环保材料礼品盒生产协议
- 烟草行业应急预案编制与管理培训
- 2024事业单位食堂考试题及答案
- “双减”政策背景下小学语文读写研究
- 光学设计 第3讲 色度学
- 孔子的美学思想对现代设计的启示
- 脑干损伤的急救处理与康复训练
- 2025年日历日程表含农历可打印
- 《艺术概论》课件-第二章 艺术的功能
- 吴《园林植物配置技术》课件
- 《热力发电厂》热力发电厂全面性热力系统
- 14D504接地装置安装图集
评论
0/150
提交评论