Java程序设计的基本概念.ppt

上传人:wuy****n92 文档编号:70792484 上传时间:2023-01-28 格式:PPT 页数:31 大小:503KB
返回 下载 相关 举报
Java程序设计的基本概念.ppt_第1页
第1页 / 共31页
Java程序设计的基本概念.ppt_第2页
第2页 / 共31页
点击查看更多>>
资源描述

《Java程序设计的基本概念.ppt》由会员分享,可在线阅读,更多相关《Java程序设计的基本概念.ppt(31页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、WHUT第第2章章 Java程序设计的基本概念程序设计的基本概念主主 讲:肖讲:肖 敏敏 电电 话:话:E-mail:第第2章章 Java程序设计的基本概念程序设计的基本概念数据类型和标识符数据类型和标识符2.12.2常量与变量常量与变量2.3运算符与表达式运算符与表达式2.4数据类型的转换数据类型的转换2.1 数据类型和标识符数据类型和标识符数据类型vJava数据类型数据类型类型分类类型分类基本数据类型所对应的类基本数据类型所对应的类基本数据类型基本数据类型基本数据类型基本数据类型布尔型(布尔型(BooleanBoolean)布尔型:布尔型:booleanboolean字符型(字符型(Cha

2、rChar)字符型:字符型:charchar整数型(整数型(IntegerInteger)字节型:字节型:bytebyte短整型:短整型:shortshort整型整型 :intint长整型:长整型:longlong实(浮点)型(实(浮点)型(FloatFloat)单精度型:单精度型:floatfloat双精度型:双精度型:doubledouble复合数据类型复合数据类型类(类(ClassClass)类类 :classclass接口(接口(InterfaceInterface)接口接口 :interfaceinterface数组(数组(ArrayArray)(1)当数据必须作为对象出现,例如:)

3、当数据必须作为对象出现,例如:Vector类实现可增长的对象数组;类实现可增长的对象数组;(2)Integer作为作为int对应的封装器类对应的封装器类,提供提供 了许多的方法了许多的方法2.1 数据类型和标识符数据类型和标识符基本基本数据类型数据类型vJava中定义了中定义了4类类8种基本数据类型种基本数据类型逻辑型逻辑型(布尔型布尔型):boolean,1 bit文本型文本型(字符型字符型):char,2byte=16bit整数型整数型int字节型:字节型:byte,1byte=8bit短整型:短整型:short,2byte长整型:长整型:long,4byte,123L表示长整型数表示长整

4、型数123浮点型浮点型单精度型:单精度型:float,4byte,3.14F双精度型:双精度型:double,8byte,1.23D2.1 数据类型和标识符数据类型和标识符基本基本数据类型数据类型vJava中定义了中定义了4类类8种基本数据类型种基本数据类型逻辑型逻辑型(布尔型布尔型):boolean,1 bit文本型文本型(字符型字符型):char,2byte=16bit整数型整数型字节型:字节型:byte,1byte=8bit短整型:短整型:short,2byte整型:整型:int,4byte长整型:长整型:long,4byte,123L浮点型浮点型单精度型:单精度型:float,4byt

5、e,3.14F双精度型:双精度型:double,8byte,1.23Dn适用于逻辑运算,一般用于程序流程控制;n数据只允许取值true和false,整型值和布尔值之间不 能进行相互转换nchar类型表示单个字符,a,A等,A表示编码为65 所对应的字符常量。nUnicode编码的十六进制表示:范围u0000到uffff,u03C0表示n表示特殊字符的转义序列符:b表示退格,等同u0008n代码点:超出范围u0000到uffff之外的字符表示方法。转义序列转义序列名称名称Unicode值值b退格退格u0008t制表制表u0009n换行换行u000ar回车回车u000d”双引号双引号u0022单引

6、号单引号u0027反斜杠反斜杠u005c2.1 数据类型和标识符数据类型和标识符标识符标识符vJava对各种变量、方法和类等要素命名时使用的对各种变量、方法和类等要素命名时使用的字符序列称为标识符。字符序列称为标识符。vJava标识符的命名规则标识符的命名规则vJava标识符约定俗成的命名规范标识符约定俗成的命名规范n由字母、下划线“_”、美元符“$”或者数字构成;n以字符、下划线“_”、美元符“$”打头;n大小写敏感,长度无限制;n不能包含空格、操作符、关键字,不能与Java自带的 类、方法、对象同名。n类和接口名:通常是名词,用一或多个英文单词表示,每个单词的首字母大写,例String、G

7、raphics、Color、FileInputStream等。n方法名和变量名:第一个字母小写,如果有其他单词,则每个单词的第一个字母大写,如main()、println()、setColor()。n常量名(用关键字final修饰的变量):全部大写,如果 由多个单词构成,则单词之间用_连接。n包名:全部由小写字母构成。2.1 数据类型和标识符数据类型和标识符标识符标识符v合法的标识符和非法的标识符合法的标识符和非法的标识符合法的标识符合法的标识符不合法的标识符不合法的标识符HelloWorldHello WorldDataClassDataClass#_98398.3$classclass2.

8、1 数据类型和标识符数据类型和标识符关键字关键字abstract boolean break byte casecatch char class const falsecontinue default do double elseextends final finally float forgoto if import implements intinstanceof interface long native newnull package private protected publicreturn short static synchronized superthis throw thr

9、ows transient truetry void volatile while nJava中一些赋以特定的含义,用做专门用途的字符串称为n所有Java关键字都是小写英文ngoto 和 const虽然从未使用,但也作为Java关键字保留。vJava关键字关键字2.2 常量与变量常量与变量v常量常量 常量在程序执行期间其值是不能发生变化,只能常量在程序执行期间其值是不能发生变化,只能引用,不能赋值引用,不能赋值。v变量变量 变量形式的值是可以变化的,它代表内存中指定变量形式的值是可以变化的,它代表内存中指定的存储单元。提供了数据存放信息的容器。的存储单元。提供了数据存放信息的容器。既能既能引用

10、又能赋值引用又能赋值2.2 常量与变量常量与变量常量常量v常量值(文字常量、字面常量)常量值(文字常量、字面常量)整型常量值整型常量值实型常量值实型常量值字符型和字符串常量值字符型和字符串常量值布尔型常量值布尔型常量值v常量:用一个符号名代替常量值,先定义后使用常量:用一个符号名代替常量值,先定义后使用常量的定义常量的定义常量的使用常量的使用n十进制形式:123n八进制形式:013,0123,-0789n十六进制形式:0 xFF,-0 x100n默认为int型,其后加l或L为长整型:1200Ln十进制形式:由数字和小数点构成,必须有小数点n科学计数法形式,1.75e5,e之前必须有数字,e之

11、后必须为整数n默认双精度浮点型,69.7f或69.7F表示单精度浮点型n字符常量:单引号引起来的一个字符,如e、E等n转移字符:表示特殊字符的转义序列符,b表示退格nUnicode编码的十六进制表示:范围u0000到uffff,u03C0表示n字符串常量:”e”,”E”,”abddk”,”Hello”n常量的定义:利用关键字final声明一个常量n常量命名约定:一般常量名用大写字母表示,如果 常量名由多个单词构成,则单词之间用下划线连接n例如:final double PI=3.14152.2 常量与变量常量与变量变量量v变量的本质及变量的命名变量的本质及变量的命名v变量的定义及赋值变量的定义

12、及赋值v变量的作用域变量的作用域v变量的默认值变量的默认值2.2 常量与变量常量与变量变变量的本质量的本质vJava变量是程序中最基本的存储单元,本质是内变量是程序中最基本的存储单元,本质是内存中的一小块区域,使用变量名来访问这块区域。存中的一小块区域,使用变量名来访问这块区域。因此,每一个变量使用前必须先申请内存(声明)因此,每一个变量使用前必须先申请内存(声明)、而后赋值(填充内容)、使用。、而后赋值(填充内容)、使用。值值名称名称如果由多个单词组成,如果由多个单词组成,则首字母小写,其它则首字母小写,其它单词首字母大写,其单词首字母大写,其余均小写余均小写2.2 常量与变量常量与变量变量

13、定义及赋值量定义及赋值vJava程序中每一个变量都属于特定的数据类型,程序中每一个变量都属于特定的数据类型,在使用前,必须先声明,声明的语法格式如下:在使用前,必须先声明,声明的语法格式如下:type varName;type varName=value;type varName1=value1,varName2=value2vtype为为Java提供的提供的4类类8种基本数据类型,例如:种基本数据类型,例如:int i=100;float f=12.3f;double d1,d2,d3=0.123;String s=“Hello”;2.2 常量与变量常量与变量Java变量的分类变量的分类v按

14、被声明的位置分类按被声明的位置分类局部变量声明位置:方法或语句块内部定义的变量(必须初始化)作用域:方法或语句块的内部成员变量声明位置:在方法外部、类的内部定义的变量作用域:作用域是整个类v按所属的数据类型划分按所属的数据类型划分基本数据类型变量引用数据类型变量2.2 常量与变量常量与变量变量的默认值变量的默认值vJava基本数据类型的默认值基本数据类型的默认值数据类型数据类型默认值默认值 bytebyte0 0shortshort0 0intint0 0longlong0L0Lfloatfloat0.0f0.0fdoubledouble0.0d0.0dcharcharu0000u0000bo

15、oleanbooleanfalsefalse注意:Java对基本数据类型变量赋予默认值不适用于局部变量,局部变量必须自行赋初值。public void method()int i;int j=i+5;double d=3.14;2.3运算符和表达式运算符和表达式v赋值运算符和赋值表达式赋值运算符和赋值表达式v算术运算符和算术表达式算术运算符和算术表达式v关系运算符和关系表达式关系运算符和关系表达式v逻辑运算符与逻辑表达式逻辑运算符与逻辑表达式v复合赋值运算符复合赋值运算符v位运算符和条件运算符位运算符和条件运算符v运算符的优先级和结合性运算符的优先级和结合性2.3运算符和表达式运算符和表达式赋

16、值运算符和赋值表达式赋值运算符和赋值表达式v赋值运算符赋值运算符 =v赋值表达式赋值表达式 变量名变量名=表达式表达式int width;width=3;length=width=3;对象数对象数名称名称运算符运算符运算规则运算规则运算对象运算对象表达式实例表达式实例运行结果运行结果一元一元正正取原值取原值整型整型(或)(或)实型实型+3+3+3+3负负取负值取负值4 4-4-4二元二元加加加法加法4+54+599减减减法减法8 85 533乘乘*乘法乘法整型整型(或)(或)实型实型4*94*93636除除除法除法7.0/27.0/23.53.5模模%整除取余整除取余整型整型8%38%3222

17、.3运算符和表达式运算符和表达式算术运算符和算术表达式算术运算符和算术表达式v算术运算符算术运算符2.3运算符和表达式运算符和表达式算术运算符和算术表达式算术运算符和算术表达式v算术表达式算术表达式运算符不能相邻;运算符不能相邻;乘号不能省略;乘号不能省略;括号必须成对出现;括号必须成对出现;表达式从左到右在同一基准并排书写;表达式从左到右在同一基准并排书写;要注意各种运算符的优先级别。要注意各种运算符的优先级别。参加运算的对象均为数值型数据,运算结果是数值型。参加运算的对象均为数值型数据,运算结果是数值型。*表达式的书写中需注意的问题表达式的书写中需注意的问题*2.3运算符和表达式运算符和表

18、达式算术运算符和算术表达式算术运算符和算术表达式v+字符串连接运算符:加法v自增、自减运算符:自增、自减运算符:+和和-public class HelloWorld public static void main(String args)int a=3 System.out.println(HelloWorld!);System.out.println(a+1);System.out.println(a+1);System.out.println(a+1);public class HelloWorld public static void main(String args)int a=3;

19、System.out.println(a+);System.out.println(+a);2.3运算符和表达式运算符和表达式关系运算符和关系表达式关系运算符和关系表达式关系运算符都是双目运算,是用来比较两个运算量关系运算符都是双目运算,是用来比较两个运算量之间的关系,关系表达式的运算结果为逻辑量。若之间的关系,关系表达式的运算结果为逻辑量。若关系成立,结果为关系成立,结果为True;关系不成立,结果为关系不成立,结果为False运算符运算符含义含义优先级优先级实例实例结果结果小于小于所有关系运所有关系运算优先级相算优先级相同。低于算同。低于算术运算的加术运算的加“+”,减,减“-”运算,运算

20、,高于逻辑运高于逻辑运算。算。15+1020False=小于或等于小于或等于10大于大于1020False=大于或等于大于或等于b=aTrue=等于等于b=aFalse!=不等于不等于b!=aTrue数值型或数值型或字符型字符型2.3运算符和表达式运算符和表达式逻辑运算符和逻辑表达式逻辑运算符和逻辑表达式v逻辑运算符逻辑运算符逻辑非:!true=false,!false=true逻辑与:true&true=true,其余为false逻辑或:false|false=false,其余为truev判断是否为闰年判断是否为闰年v判断三角形的形状判断三角形的形状v自左向右运算,并遵循自左向右运算,并遵循

21、”短路原则短路原则”a&b&c:如果a为false,则表达式为falsea|b|c:如果a为true,则表达式为true2.3运算符和表达式运算符和表达式复合赋值运算符复合赋值运算符v复合赋值运算符复合赋值运算符运算符运算符用法举例用法举例说明说明+=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运算符和表达式运算符和表达式位运算符和条件运算符位运算符和条件运算符v位运算符位运算符运算符运算符说明说明用法举例用法举例&转换为二进制数字进行与运算转换为二进制数字进行与运算

22、1&1=1|转换为二进制数字进行或运算转换为二进制数字进行或运算0|0=0,0|1=1转换为二进制数字进行异或运算转换为二进制数字进行异或运算10=1,01=1取相反数减取相反数减1运算运算100=-100-1=-101向右移位向右移位151=7 152=3向左移位向左移位31=6,151=302.3运算符和表达式运算符和表达式位运算符和条件运算符位运算符和条件运算符v条件运算符是三元运算符,其语法形式为:条件运算符是三元运算符,其语法形式为:?e1:e2 其中表达式值的类型为逻辑型,若表达式的值为其中表达式值的类型为逻辑型,若表达式的值为真,则返回真,则返回e1值;表达式值非真,返回值;表达

23、式值非真,返回e2值。值。int a,b,c;if(ab)c=a;else c=b;c=(ab)?a:b;等价于等价于2.3运算符和表达式运算符和表达式运算符的优先级和结合性运算符的优先级和结合性v运算符的优先级和结合性运算符的优先级和结合性v例子例子n表达式求值时,按运算符优先级别由高到低的表达式求值时,按运算符优先级别由高到低的 次序执行。次序执行。n同一个级别的按照从左到右次序进行计算(右同一个级别的按照从左到右次序进行计算(右 结合运算符从右到左计算)结合运算符从右到左计算)na&b|c等价于等价于(a&b)|cna+=b+=c等价于等价于a+=(b+=c)等价于等价于b=b+c;a=

24、a+b2.4 数据类型的转换数据类型的转换自动转换自动转换vboolean类型不可以转换为其他的数据类型类型不可以转换为其他的数据类型v整型、字符型、浮点型的数据在混合运算中可以整型、字符型、浮点型的数据在混合运算中可以自动转换,转换原则如下:自动转换,转换原则如下:表示范围小的类型自动转换为表示范围大的类型表示范围小的类型自动转换为表示范围大的类型多种类型的数据混合运算时,系统自动将所有数据转多种类型的数据混合运算时,系统自动将所有数据转换成表示范围最大的那一种类型,而后进行运算。换成表示范围最大的那一种类型,而后进行运算。如果两个操作数有一个是如果两个操作数有一个是double型,则另一个

25、转换为型,则另一个转换为double型型否则,如果一个是否则,如果一个是float型,则另一个自动转换为型,则另一个自动转换为float型型否则,如果另一个是否则,如果另一个是long型,则另一个自动转换为型,则另一个自动转换为long型型否则,两个操作数都转换为否则,两个操作数都转换为int型型byteshortintlongcharfloatdouble2.4 数据类型的转换数据类型的转换自动转换自动转换v自动转换举例自动转换举例public class HelloWorld public static void main(String args)float f=1.23f;long l=

26、345;System.out.println(f);System.out.println(l);2.4 数据类型的转换数据类型的转换强制强制转换转换v强制类型转换语法:强制类型转换语法:(type)变量名变量名v取整运算取整运算double x=9.997;int nx=(int)x;v四舍五入取整运算四舍五入取整运算double x=9.997;int nx=(int)Math.round(x);public class TestConvert public static void main(String arg)int i1=123;int i2=456;double d1=(i1+i2)

27、*1.2;/系统将转换为系统将转换为double型运算型运算 float f1=(float)(i1+i2)*1.2);/需要加强制转换符需要加强制转换符 byte b1=67;byte b2=89;byte b3=(byte)(b1+b2);/系统将转换为系统将转换为int型运算,需要强制转换符型运算,需要强制转换符 System.out.println(b3);double d2=1e200;float f2=(float)d2;/会产生溢出会产生溢出 System.out.println(f2);float f3=1.23f;/必须加必须加f long l1=123;long l2=30

28、000000000L;/必须加必须加L float f=l1+l2+f3;/系统将转换为系统将转换为float型计算型计算 long l=(long)f;/强制转换会舍去小数部分(不是四舍五入)强制转换会舍去小数部分(不是四舍五入)public class TestConvert2 public static void main(String args)int i=1,j=12;float f1=(float)0.1;/0.1f float f2=123;long l1=12345678,l2=8888888888L;double d1=2e20,d2=124;byte b1=1,b2=2,b3=127;j=j+10;i=i/10;i=(int)(i*0.1);char c1=a,c2=125;byte b=(byte)(b1-b2);char c=(char)(c1+c2-1);float f3=f1+f2;float f4=(float)(f1+f2*0.1);double d=d1*i+j;float f=(float)(d1*5+d2);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com