Java程序设计教学做一体化教程_第2章_基本数据类型与数组解读课件



《Java程序设计教学做一体化教程_第2章_基本数据类型与数组解读课件》由会员分享,可在线阅读,更多相关《Java程序设计教学做一体化教程_第2章_基本数据类型与数组解读课件(36页珍藏版)》请在装配图网上搜索。
1、单击此处编辑母版标题样式,,单击此处编辑母版文本样式,,第二级,,第三级,,第四级,,第五级,,,第,,,页,注意:开始用功了,!,,第,,,页,配合,例子源代码一起使用,Power point,制作:耿祥义 张跃平,基本数据类型与数组,《,Java程序设计教学做一体化教程,》,,第,2,章,,,◆,整型类型,,◆,字符类型,,◆,浮点类型,,◆,逻辑类型,,◆,输出、输出数据,,◆,数组,主要内容,,第,,,页,2.1,整数类型,,,2.1.1,核心知识,,1,.,int,型,,常量:,123,,,6000,(,十进制),,077,(八进制),,0,x3ABC,(,十六进制)。,,,变量:,
2、使用关键字,int,来声明,int,型变量,声明时也可以赋给初值,,,例如:,,int,x= 12,y=9898,z;,,,,int,型变量在内存占用,4,个字节,取值范围是:,-2,31,~2,31,-1,。,,,2.,byte,型,,,,常量:,Java,中不存在,byte,型常量的表示法,但可以把一定范围内的,int,型常量,,赋值给,byte,型变量。,,,,变量:,使用关键字,byte,来声明,byte,型变量,,例如:,,byte x= -12,tom=28, handsome,,=98;,,,,byte,型变量在内存占用,1,个字节。取值范围是:,-2,7,~2,7,-1,。,,
3、3,.,short,型,,,常量:,和,byte,型类似,,Java,中也不存在,short,型常量的表示法,但可以把一定,,范围内的,int,型常量赋值给,short,型变量。,,,变量:,使用关键字,short,来声明,short,型变量,,例如:,,short x=12,y=1234;,,,,,short,型变量在内存占用,2,个字节。取值范围是:,-2,15,~,2,15,-1,。,,,4. long,型,,,常量:,long,型常量用后缀,L,来表示,例如108,L(,十进制)、07123,L(,八进制)、,,,0,x3ABCL(,十六进制,),。,,,变量:,使用关键字,long,
4、来声明,long,型变量,,,例如:,,long width=12L,height=2005L,length;,,,,long,型变量在内存占用,8,个字节。取值范围是:,-2,63,~,2,63,-1,。,,第,,,页,,2.1.2,能力目标,,声明整型变量,并赋予初值,了解,byte,short,int,和,long,型变量的取值范围。,,,第,,,页,,2.1.3,任务驱动,Application2_1.java,代码。,,程序运行效果如图,2.1,。,,,第,,,页,任务小结,,Byte.MAX_VALUE,和,Byte.MIN_VALUE,分别表示,byte,型变量的最大值,127,
5、和最小值,-128,,。,,Java,没有无符号的,byte,short,int,和,long,,因此,,unsigned,int,m;,是错误的变量声明。,,第,,,页,2.2,字符类型,,2.2.1,核心知识,,_1,Unicode,字符集,Unicode,字符集最多可以识别,65536,个字符。,Unicode,字符集的前,128,个字符刚好是,ASCII,码表中的字符。,va,语言中用到的字母不仅包括通常的拉丁字母,a,、,b,、,c,等,也包括汉语中的汉字、日文的片假名和平假名、朝鲜文、俄文、希腊字母以及其它许多语言中的文字。,,,2.标识符,,,用来标识类名、变量名、方法名、类型名
6、、数组名、文件名的有效字符序列称为标识符。简单地说,标识符就是一个名字。,,以下是,Java,关于标识符的语法规则。,,◆,标识符由字母、下划线、美元符号和数字组成,长度不受限制,。,,◆,标识符的第一个字符不能是数字字符。,,◆,,标识符不能是关键字。,,◆,标识符不能是,true,、,false,和,null,(尽管,true,、,false,和,null,不是,Java,关键字)。,,第,,,页,,2.2.1,核心知识,,_2,3.,关键字,,,关键字就是,Java,语言中已经被赋予特定意义的一些单词。不可以把关键字做为标识符来用。,,,4,.,char,型数据,,常量:,'A',,,'
7、b',,,'?',,,'!',,,'9',,,',好,',,,'\t',,,',き,',等,即用单引号(需在英文输入法状态下输入单引号)扩起的,Unicode,表中的一个字符。,,变量:,使用关键字,char,来声明,char,型变量,例如:,,char,ch,= ',A',home,= ',家,',handsome = ',酷,';,,char,型变量在内存占用,2,个字节,取值范围是,0~65535,。,,第,,,页,,2.2.2,能力目标,,使用,char,声明变量,使用转义字符,观察字符在,Unicode,表中的索引位置。,,第,,,页,,2.2.3,任务驱动,任务的主要内容,,◆
8、在主类的,main,方法中使用,char,声明变量。,,◆ 使用赋值语句重新给变量赋值。,,◆ 按字符和索引位置输出变量的值。,,◆ 输出某些特殊的转义字符,比如双引号转义字符。,,,将下列,Application2_2,.java,中的,【,代码,】,替换为程序代码。,,程序运行效果如图,2.2,。,,第,,,页,,任务,,小结,Java,中的,char,型数据一定是无符号的,而且不允许使用,unsigned,来修饰所声明的,char,型变量。,,在,Java,中,可以用字符在,Unicode,表中排序位置的十六进制转义(需要用,u,做前缀)来表示该字符,其一般格式为,‘\u****’
9、,,例如,,‘\u0041’,表示字符,A,,,‘\u0061’,表示字符,a,。,,第,,,页,2.3,浮点类型,,,,2.3.1,核心知识,浮点型分为,float,(单精度)和,double,型(双精度)。,1. float,型,,,常量:,453.5439,f,21379.987F,231.0f(,小数表示法),2,e40f(2,乘10的40次方,指数表示法)。需要特别注意的是常量后面必须要有后缀“,f”,或“,F”,。,,,,变量:,使用关键字,float,来声明,float,型变量,,,例如:,float x=22.76f,tom=1234.987f,weight=1e-12F;,,
10、,,精度:,float,变量在存储,float,型数据时保留,8,位有效数字。,,,对于,float,型变量,内存分配给4个字节,占32位。,,,2.,double,型,,,常量:,2389.539,d,2318908.987,0.05(,小数表示法),1,e-90(1,乘10的-90次方,指数表示法)。对于,double,常量,后面可以有后缀“,d”,或“,D”,,但允许省略该后缀。,,变量:,使用关键字,double,来声明,double,型变量,,,,例如:,double height=23.345,width=34.56D,length=1e12;,,,对于,double,型变量,内存
11、分配给8个字节,占64位 。,,精度:,double,变量在存储,double,型数据时保留,16,位有效数字。,,第,,,页,,2.3.2,能力目标,,能区分,float,常量和,double,常量,掌握,float,和,double,型变量的精度,,第,,,页,,2.3.3,任务驱动,任务的主要内容,,分别用,float,和,double,变量模拟计量工具计算出一枚戒指的价值,即用,float,和,double,变量的值代表所计量出的物体质量。,,,将下列,Application2_3.java,中的,【,代码,】,替换为程序代码。,,程序运行效果如图,2.3,。,,第,,,页,,任务,,
12、小结,,比较float型数据与double型数据时必须注意数据的实际精度,。,,%f,按小数表示法输出,float,和,double,型数据,,,默认输出,6,位小数。,,第,,,页,2.4,逻辑类型,,,,2.4.1,核心知识,可以使用逻辑类型变量存储“真”、“假”数据,,常量:,true,,,false,。,,变量:,使用关键字,boolean,来声明逻辑变量,声明时也可以赋给初值,例如:,,,boolean,male = true, on = true, off = false,,isTriangle,;,,第,,,页,,2.4.2,能力目标,,使用,boolean,声明变量,并用,bo
13、olean,变量存储,true,或,false,。,,第,,,页,,2.4.3,任务驱动,任务的主要内容,,判断,3,个整数代表的长度能否构成三角形的三边,,。,,,将下列,Application2_4.java,中的,【,代码,】,替换为程序代码。,,程序运行效果如图,2.4,。,,第,,,页,,任务,,小结,不可以把整型数据赋值给,boolean,变量。,,可以使用,%b,输出,boolean,型数据,。,,第,,,页,2.5,类型转换运算,,,,2.5.1,核心知识,当把一种基本数据类型变量的值赋给另一种基本类型变量时就涉及到数据转换。,,下列基本类型会涉及数据转换(不包括逻辑类型)。将
14、这些类型按精度从低到高排列,byte short char,int,long float double,,(1),低到高的自动转换,,当把级别低的变量的值赋给级别高的变量时,系统自动完成数据类型的转换。,,,(2),高到低的转换运算,,当把级别高的变量的值赋给级别低的变量时,必须使用类型转换运算,格式如下:,(,类型名,),要转换的值,;,,例如:,,,int,x = (,int,)34.89;,,,如果输出,x,的值 将是,34,,第,,,页,,2.5.2,能力目标,,掌握基本类型数据的精度,能使用转换运算符将级别高的数据转换为级别低的数据 。,,第,,,页,,2.5.3,任务驱动,
15、用火车在托运行李时以公斤为单位计算费用(,12.6,元,/kg,),忽略重量中的小数部分,即忽略不足一公斤之部分。,,用汽车在托运行李时以公斤为单位计算费用(,22.5,元,/kg,),将重量中的小数部分进行四舍五入,即将不足一公斤之部分进行四舍五入。,,将下列,Application2_5.java,中的,【,代码,】,替换为程序代码。,,程序运行效果如图,2.5,。,,第,,,页,,任务,,小结,为了四舍五入,可以将浮点数据加上,0.5,,再进行,int,型转换运算。例如,,(int)(15.9+0.5),的结果是,16,。,,当把一个,int,型常量赋值给一个,byte,、,short,
16、和,char,型变量时,不可超出这些变量的取值范围,否则必须进行类型转换运算,。,,一个常见的错误是在把一个,double,型常量赋值给,float,型变量时没有进行类型转换运算,,第,,,页,2.6,输入、输出数据,,,,2.6.1,核心知识,,1,.输入数据,,,从键盘为基本型变量输入值的主要步骤:,,,◆,使用,Scanner,类创建一个对象,Scanner reader = new Scanner(System.in);,,,◆,reader,对象调用下列方法,读取用户在命令行输入的各种基本类型数据:,,,nextBoolean,(),,nextByte,(),,nextShort,(
17、),,nextInt,(),,nextLong,(),,,,nextFloat,(),,nextDouble,(),。,,程序执行上述方法,执行时将等待用户在命令行输入数据回车确认。,,2,.输出数据,,,(,1,),println,(),,,System.out.,println,(),或,System.out.print(),可输出串值、表达式的值,二者的区别是前者输出数据后换行,后者不换行。,,(,2,),printf,(),,,printf,输出数据的格式如下:,,,System.out.,printf,(",格式控制部分,",,表达式,1,,表达式,2,,,…,表达式,n),,,格式
18、控制部分由格式控制符号:,%b,、,%d,、,%c,、,%f,、,%s,和普通的字符组成,普通字符原样输出。格式符号用来输出表达式的值。,,第,,,页,,2.6.2,能力目标,,能从键盘为基本型变量输入值,能分别使用,print(),和,printf,(),输出值 。,,第,,,页,,2.6.3,任务驱动,从键盘输入,double,型变量的值,输出,double,型变量的值。,,将下列,Application2_6.java,中的,【,代码,】,替换为程序代码。,,程序运行效果如图,2.6,。,,第,,,页,,任务,,小结,需要特别注意的是,在使用,System.out.println,(),
19、或,System.out.print,(),输出字符串常量时,不可以出现“回车”,如果需要输出的字符串的长度较长,可以将字符串分解成几部分,然后使用并置符号:“,+”,将它们首尾相接,,,第,,,页,2.7,数组,,,,2.7.1,核心知识,_1,1.数组的结构,,数组是,相同类型,的,变量,按,顺序,组成的,一种复合数据类型,,称,这些相同类型,的,变量,为数组的,元素,或,单元,。数组,通过,数组名加,索引,来,使用,数组的,元素,。,,2.,声明,与,创建,数组,,,声明,数组,包括,数组,变量,的,名字,(简称数组名)、数组的,类型,。,,,声明,一维数组有,下列两种格式,:,,,数组
20、的,元素类型,数组名[];,,,数组的,元素类型,[] 数组名;,,,例如:,float boy[];,或,float [] boy;,,,声明数组后,就可以创建该数组,即给数组分配元素。为数组分配元素的格式如下:,数组名,= new,数组元素的类型,[,数组元素的个数,];,,,例如:,boy = new float[4];,,第,,,页,,2.7.1,核心知识,_2,3,.数组的使用,,一维数组通过索引符访问自己的元素,如,boy[0],,,boy[1],等。需要注意的是索引从,0,开始,,。,,4,.,length,的使用,,数组的元素的个数称作数组的长度。对于一维数组,“数组名,.le
21、ngth”,的值就是数组中元素的个数;例如,对于,float a[] = new float[12]; a.length,的值,12,。,,5,.数组的初始化,,创建数组后,系统会给数组的每个元素一个默认的值,如,,float,型是,0.0,。,,在声明数组的同时也可以给数组的元素一个初始值,如:,,,int,a[] = {100,200,300};,,第,,,页,,2.7.1,核心知识,_3,6,.数组的引用,,数组属于引用型变量,因此两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素。例如,对于,int,a[] = {1,2,3},b[ ] = {4,5};,,,如果使用了,a
22、 = b;,,那么,,a,中存放的引用和,b,的相同,这时系统将释放最初分配给数组,a,的元素,使得,a,的元素和,b,的元素相同。,,第,,,页,,2.7.2,能力目标,,能声明数组、创建一维数组,能使用,length,输出一维数组的长度。能输出数组的引用,以及将一个数组的引用赋值给另一个数组 。,,第,,,页,,2.7.3,任务驱动,使用数组。,,将下列,Application2_7.java,中的,【,代码,】,替换为程序代码。,,程序运行效果如图,2.10,。,,第,,,页,,任务,,小结,可以一次声明多个数组,,int,[] a,b;,,,等价的声明是:,int,a[],b[];,,
23、两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素。,,二维数组和一维数组一样,在声明之后必须用,new,运算符为数组分配元素,例如:,int,b[][]; b = new,int,[3][6];,,或,int,b[][] = new,int,[3][6];,,一个二维数组是由若干个一维数组构成的,例如,上述创建的二维数组,b,就是由,3,个长度为,6,的一维数组:,b[0],、,b[1],和,b[2],构成的,.,,对于二维数组“数组名,.length”,的值是它含有的一维数组的个数。例如,对于上述二维数组,b,,,b.length,的值是,3,(,b[0].length, b[1
24、].length,和,b[2].length,的值都是,6,)。,,第,,,页,2.8,小结,1.,标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字字符,,2. Java,语言有,8,种基本数据类型:,boolean,、,byte,、,short,、,char,、,int,、,long,、,float,、,double,。,,3. Java,的关系和逻辑运算符和,C,语言的相同,需要注意的是其运算结果是,boolean,型数据,true,或,flase,(不是数字,1,或,0,)。,,4.,数组是相同类型的数据元素按顺序组成的一种复合数据类型,数组属于引用型变量,因此两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素。,“,本节结束咯~偶都会了~太葱明了,”,,第,,,页,,第,,,页,
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。