Java2实用教程第4版第2章基本数据类型与数组.ppt

上传人:枫** 文档编号:576677794 上传时间:2024-08-20 格式:PPT 页数:20 大小:500.50KB
返回 下载 相关 举报
Java2实用教程第4版第2章基本数据类型与数组.ppt_第1页
第1页 / 共20页
Java2实用教程第4版第2章基本数据类型与数组.ppt_第2页
第2页 / 共20页
Java2实用教程第4版第2章基本数据类型与数组.ppt_第3页
第3页 / 共20页
Java2实用教程第4版第2章基本数据类型与数组.ppt_第4页
第4页 / 共20页
Java2实用教程第4版第2章基本数据类型与数组.ppt_第5页
第5页 / 共20页
点击查看更多>>
资源描述

《Java2实用教程第4版第2章基本数据类型与数组.ppt》由会员分享,可在线阅读,更多相关《Java2实用教程第4版第2章基本数据类型与数组.ppt(20页珍藏版)》请在金锄头文库上搜索。

1、注意:开始用功了注意:开始用功了!第 页Java2实用教程实用教程(第第4版版) 第第2章章配合例子源代码一起使用例子源代码一起使用Power point 制作:耿祥义 张跃平基本数据类型与数组基本数据类型与数组 第 页主要内容主要内容标识符与关键字标识符与关键字基本数据类型基本数据类型类型转换运算类型转换运算输入、输出数据输入、输出数据数组数组导读导读第 页2.1 标识符与关键字标识符与关键字 2.1.1. 标识符标识符 用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符,简单地说,标识符就是一个名字 .标识符由字母、下划线、美元符号和数字组成,长度不受限制。标识符

2、由字母、下划线、美元符号和数字组成,长度不受限制。标识符的第一个字符不能是数字字符。标识符的第一个字符不能是数字字符。标识符不能是关键字(关键字见下面的标识符不能是关键字(关键字见下面的2.1.3节)节)标识符不能是标识符不能是true、false和和null(尽管尽管true、false和和null不是关键字)不是关键字)2.1.2 Unicode字符集字符集 Java语言使用Unicode标准字符集,该字符集由UNICODE协会管理并接受其技术上的修改,最多可以识别65536个字符 .2.1.3 关键字关键字 关键字就是具有特定用途或被赋予特定意义的一些单词,不可以把关键字作为标识符来用

3、.第 页2.2 2.2 基本数据类型基本数据类型 有有8 8种基本数据类型,分别是:种基本数据类型,分别是: booleanboolean、 bytebyte、 shortshort、 intint、 longlong、 floatfloat、doubledouble、charchar。 这这8 8种基本数据类型习惯上可分为以下四大类型:种基本数据类型习惯上可分为以下四大类型: 逻辑类型:逻辑类型:booleanboolean 整数类型:整数类型:bytebyte、shortshort、intint、longlong 字符类型:字符类型:charchar 浮点类型:浮点类型:floatfloa

4、t、doubledouble 第 页2.2.1 2.2.1 逻辑类型逻辑类型 常量:常量:true,false。变量:变量:使用关键字使用关键字boolean来声明逻辑变量,来声明逻辑变量, 声明时也可以赋给初值,声明时也可以赋给初值, 例如:例如: boolean x,ok=true,关闭关闭=false;第 页2.2.2 整数类型整数类型 1int 型型 常量:常量:123,6000(十进制),十进制),077(八进制),(八进制),0x3ABC(十六进制)。十六进制)。 变量:变量:使用关键字使用关键字int来声明来声明int型变量,声明时也可以赋给初值,型变量,声明时也可以赋给初值,

5、例如:例如: int x= 12,平均平均=9898,jiafei; 对于对于int型变量,内存分配给型变量,内存分配给4个字节(个字节(byte),),占占32位。位。2byte 型型 常量:常量:Java中不存在中不存在byte型常量的表示法,但可以把一定范围内的型常量的表示法,但可以把一定范围内的int型常量型常量 赋值给赋值给byte型变量。型变量。 变量:变量:使用关键字使用关键字byte来声明来声明byte 型变量型变量 例如:例如: byte x= -12,tom=28,漂亮漂亮=98; 对对于于byte型内存分配型内存分配给给1个字个字节节,占,占8位位 。3 short 型型

6、 常量:常量:和和byte型类似,型类似,Java中也不存在中也不存在short型常量的表示法,但可以把一定型常量的表示法,但可以把一定 范围内的范围内的int型常量赋值给型常量赋值给short型变量。型变量。 变量:变量:使用关键字使用关键字short来声明来声明short型变量型变量 例如:例如: short x=12,y=1234; 对对于于short型型变变量,内存分配量,内存分配给给2个字个字节节,占,占16位位.4. long 型型 常量:常量:long型常量用后缀型常量用后缀L来表示,例如来表示,例如108L(十进制十进制)、07123L(八进制八进制)、 0x3ABCL(十六进

7、制十六进制) 。 变量:变量:使用关键字使用关键字long来声明来声明long型变量,型变量, 例如:例如: long width=12L,height=2005L,length; 对于对于long型变量,内存分配给型变量,内存分配给8个字节,占个字节,占64位。位。第 页2.2.3 字符类型字符类型 1. 常常量量:常常量量:A,b,?,!,9,好好,t,等,等, 即用单引号扩起的即用单引号扩起的Unicode表中的一个字符。表中的一个字符。 2. 变量:变量: 使用关键字使用关键字charchar来声明来声明charchar型变量,型变量, 例如:例如:char ch=A,home=家家,

8、handsome=酷酷; 对于对于charchar型变量,内存分配给型变量,内存分配给2 2个字节,占个字节,占1616位位 3. 3. 转转意意字字符符常常量量: :有有些些字字符符(如如回回车车符符)不不能能通通过过键键盘盘输输入入到到字字符符串或程序中,就需要使用转意字符常量串或程序中,就需要使用转意字符常量, , 例如:例如: n n(换行),换行), b b(退格),退格), t t(水平制表),水平制表), (单引号),(单引号),“(双引号),(双引号),(反斜线)(反斜线)等。等。 4. 4. 要要观观察察一一个个字字符符在在UnicodeUnicode表表中中的的顺顺序序位位

9、置置,可可以以使使用用intint型型显显示转换示转换,如,如( (intint)a)a或或intint p=a p=a。5. 5. 如如果果要要得得到到一一个个0 06553565535之之间间的的数数所所代代表表的的UnicodeUnicode表表中中相相应应位位置上的字符置上的字符 必须使用必须使用charchar型显示转换型显示转换。 例子例子1 1 第 页例子例子1中,分别用类型转换来显示一些字符在Unicode表中的位置,以及Unicode表中某些位置上的字符,运行效果如图2.1。 例子例子1第 页2.2.4 浮点类型浮点类型 1. float型型 常常量量:453.5439453

10、.5439f f,21379.987F21379.987F,231.0f231.0f(小小数数表表示示法法),2 2e40fe40f(2 2乘乘1010的的4040次次方方,指指数数表表示示法法)。需需要要特特别别注注意意的的是是:常常量量后后面必须要有后缀面必须要有后缀“f”f”或或“F”F”。 变量:变量:使用关键字使用关键字float来声明来声明float型变量,型变量, 例如:例如:float x=22.76f,tom=1234.987f,weight=1e-12F; 精精度度:float变变量量在在存存储储float型型数数据据时时保保留留8位位有有效效数数字字,实实际际精精度取决于

11、具体数值。度取决于具体数值。 对于对于floatfloat型变量,内存分配给型变量,内存分配给4 4个字节,占个字节,占3232位。位。 2. double 型型 常常量量:2389.5392389.539d d,2318908.9872318908.987,0.050.05(小小数数表表示示法法),1 1e-90e-90(1 1乘乘1010的的-90-90次次方方,指指数数表表示示法法)。对对于于doubledouble常常量量,后后面面可可以有后缀以有后缀“d”d”或或“D”D”,但允许省略该后缀。但允许省略该后缀。 变量:变量:使用关键字使用关键字doubledouble来声明来声明do

12、ubledouble型变量,型变量, 例如:例如:double height=23.345,width=34.56D,length=1e12; 对于对于doubledouble型变量,内存分配给型变量,内存分配给8 8个字节,占个字节,占6464位位 。 精精度度:double变变量量在在存存储储double型型数数据据时时保保留留16位位有有效效数数字字,实实际精度取决于具体数值。际精度取决于具体数值。第 页2.3 简单数据类型的级别与类型转换运算简单数据类型的级别与类型转换运算 Java中数据的基本类型(不包括逻辑类型)按精度从中数据的基本类型(不包括逻辑类型)按精度从“低低”到到“高高”

13、排列:排列:byte short char byte short char int int long float doublelong float double 当当把把级级别别低低的的变变量量的的值值赋赋给给级级别别高高的的变变量量时时,系系统统自自动动完完成成数数据据类类型型的的转转换换。例如:例如: float x=100; float x=100; 当当把把级级别别高高的的变变量量的的值值赋赋给给级级别别低低的的变变量量时时,必必须须使使用用显显示示类类型型转转换换运运算算。显示转换的格式:显示转换的格式:(类型名)要转换的值(类型名)要转换的值; ; 例如例如 intint x=(

14、x=(intint)34.89; )34.89; 当当把把一一个个intint型型常常量量赋赋值值给给一一个个bytebyte和和shortshort型型变变量量时时,不不可可以以超超出出这这些些变变量量的的取取值值范范围围,否否则则必必须须进进行行类类型型转转换换运运算算;例例如如,常常量量128128的的属属于于intint型型常常量量,超超出出bytebyte变变量量的的取取值值范范围围,如如果果赋赋值值给给bytebyte型型变变量量,必必须须进进行行bytebyte类类型转换运算(将导致精度的损失),如下所示:型转换运算(将导致精度的损失),如下所示: byte a=(byte)12

15、8; byte a=(byte)128; 第 页下面的例子例子2使用了类型转换运算,运行效果如图2.2。 例子例子2第 页2.42.4从命令行输入、输出数据从命令行输入、输出数据 _1_1 可以使用Scanner类创建一个对象: Scanner reader=new Scanner(System.in); reader对象调用下列方法,读取用户在命令行(例如,MS-DOS窗口)输入的各种基本类型数据: nextBoolean()、 nextByte()、 nextShort()、 nextInt() nextLong()、nextFloat()、nextDouble()。 上述方法执行时都会堵

16、塞,程序等待用户在命令行输入数据回车确认。2.4.1 输入基本型数据输入基本型数据 第 页例子例子3中,用户在键盘依次输入若干个数字,每输入一个数字都需要按回车键确认,在键盘输入数0结束整个的输入操作过程,程序将计算出这些数的和,运行效果如图2.3。 例子例子3第 页2.42.4从命令行输入、输出数据从命令行输入、输出数据_2_2 System.out.println()或System.out.print()可输出串值、表达式的值. 二者的区别是前者输出数据后换行,后者不换行。允许使用并置符号:“+”将变量、表达式或一个常数值与一个字符串并置一起输出,如: System.out.println

17、(m+个数的和为+sum); System.out.println(:+123+大于+122);注注 : 在使用System.out.println()或System.out.print()输出字符串常量时,不可以出现“回车”,例如,下面的写法无法通过编译: System.out.println(你好, 很高兴认识你 ); 如果需要输出的字符串的长度较长,可以将字符串分解成几部分,然后使用并置符号:“+”将它们首尾相接,例如,以下是正确的写法: System.out.println(你好,+ 很高兴认识你 ); 另外,另外,JDK1.5新增了和C语言中printf函数类似的输出数据的方法,格式

18、如下: System.out.printf(格式控制部分,表达式1,表达式2,表达式n) 格式控制部分由格式控制符号:%d、%c、%f、%s和普通的字符组成,普通字符原样输出。格式符号用来输出表达式的值。 %d输出int类型数据值;%c输出char型数据;%f输出浮点型数据,小数部分最多保留6位;%s输出字符串数据。 输出数据时也可以控制数据在命令行的位置,例如:%md输出的int型数据占m列;%m.nf输出的浮点型数据占m列,小数点保留n位。例如:System.out.printf(%d,%f,12, 23.78); 2.4.2 输出基本型数据输出基本型数据 第 页2.5 数组数组 2.5.

19、1 声明数组声明数组 声明一维数组有下列两种格式:数组的元素类型 数组名;数组的元素类型 数组名; 例如:float boy;char cat; 声明二维数组有下列两种格式:数组的元素类型 数组名;数组的元素类型 数组名; 例如:float a;Char b;2.5.2 为数组分配元素为数组分配元素 为数组分配元素的格式如下:数组名 = new 数组元素的类型数组元素的个数; 例如: boy = new float4;数组属于引用型变量,数组变量中存放着数组的首元素的地址,通过数组变量的名字加索引使用数组的元素(内存示意如图2.4所示).比如:boy0 = 12;boy1 = 23.908F;

20、boy2 = 100;boy3 = 10.23f; 第 页2.5.3 数组元素的使用数组元素的使用 一维数组通过索引符访问自己的元素,如boy0,boy1等。需要注意的是索引从0开始 .需要注意的是索引从0开始,因此,数组若有7个元素,那么索引到6为止,如果程序使用了如下语句:boy7 = 384.98f;程序可以编译通过,但运行时将发生ArrayIndexOutOfBoundsException异 常 ,因此在使用数组时必须谨慎,防止索引越界。 2.5.4 length的使用的使用 对于一维数组,“数组名.length”的值就是数组中元素的个数;对于二维数组“数组名.length”的值是它含

21、有的一维数组的个数 2.5.5 数组的初始化数组的初始化 创建数组后,系统会给数组的每个元素一个默认的值,如,float型是0.0。在声明数组的同时也可以给数组的元素一个初始值,如:float boy = 21.3f,23.89f,2.0f,23f,778.98f;第 页2.5.6 数组的引用数组的引用 数组属于引用型变量,两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素。.下面的例子4使用了数组,请读者注意程序的输出结果,运行效果如图2.7。 例子例子4 第 页2.6 2.6 应用举例应用举例 折半法折半法折折半半法法: :对于从小到大排序的数组,我们只要判断数据是否和数组中间的值相等,如果不相等,当该数据小于数组中间元素的值,就在数组的前一半数据中继续折半找,否则就在数组的后一半数据中继续折半找,如此这般,就可以比较快地判断该数据是否在数组中。 例子例子5能判断用户输入的一个整数是否在已知的数组中。程序效果如图能判断用户输入的一个整数是否在已知的数组中。程序效果如图2.8 例子例子5 第 页第 页

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号