《Java大学实用教程第2章-基本数据类型和数组.ppt》由会员分享,可在线阅读,更多相关《Java大学实用教程第2章-基本数据类型和数组.ppt(26页珍藏版)》请在三一文库上搜索。
1、第2章 基本数据类型和数组,本章导读 1. 标识符和关键字 2. 基本数据类型 3. 基本数据类型的转换 4. 数据的输入与输出 5. 数组,2.1 标识符和关键字,1标识符 用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。简单地说,标识符就是一个名字。Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字。标识符中的字母是区分大小写的,Beijing 和beijing是不同的标识符。 2 关键字 关键字就是Java语言中已经被赋予特定意义的一些单词,它们在程序中有着不同的用途,不可以把关键字作为标识符来用。,Java语言中的关键字,在
2、大多数的JAVA IDE中,关键字用蓝色字体显示.,返回,2.2 基本数据类型,基本数据类型也称作简单数据类型。Java语言有8种简单数据类型,分别是: boolean、byte 、short、int、long、 float、double、char。 这8种数据类型习惯上可分为4大类型: 逻辑类型:boolean 字符类型:char 整数类型:byte、short、int、long 浮点类型:float、double,2.2 基本数据类型,1逻辑类型 常量:true ,false。 变量的定义: 使用关键字boolean来定义逻辑变量,定义时也可以赋给初值。 如: boolean x,ok=t
3、rue,关闭=false; 2整数类型 常量:123,6000(十进制),077(八进制),0x3ABC(十六进制)。 整型变量的定义分为4种,2.2 基本数据类型,(1)int 型 使用关键字int来定义int 型整型变量,定义时也可以赋给初值,例如:int x,平均=9898;对于int型变量,内存分配给4个字节(byte)。int型变量的取值范围是: -231231-1。 (2)byte 型 使用关键字byte 来定义byte 型整型变量。对于byte型变量,内存分配给1个字节,占8位,byte型变量的取值范围是-2727-1。,2.2 基本数据类型,(3)short 型 使用关键字sh
4、ort来定义short型整型变量。对于short型变量,内存分配给2个字节,short型变量的取值范围是-215 215-1。 (4)long 型 使用关键字long来定义long型整型变量,对于long型变量,内存分配给8个字节,long型变量的取值范围是 -263263-1。,2.2 基本数据类型,3字符类型 常量: Unicode表中的字符就是一个字符常量,例如A,?,9,好,等。Java还使用转意字符常量,如: n :换行 b:退格 t :水平制表 :单引号 ”:双引号 变量的定义: 使用关键字char来定义字符变量,例如: char x= A,漂亮=假,jiafei;,2.2 基本数
5、据类型,char型变量,内存分配给2个字节,占16位,最高位不是符号位,没有负数的char。char型变量的取值范围是065536。要观察一个字符在unicode表中的顺序位置,必须使用int类型显示转换,不可以使用short型转换,因为char的最高位不是符号位。同样,要得到一个065536之间的数所代表的Unicode表中相应位置上的字符也必须使用char型显示转换。 下面的例子1中,分别用显示转换来显示一些字符在Unicode表中的位置,以及某些位置上的字符。,2.2 基本数据类型,4浮点类型 浮点型分两种 (1)float 型 常量:453.5439f,21379.987F,2e40f
6、(2乘10的40次方,科学计数法) 变量的定义:使用关键字float来定义float型变量。对于float型变量,内存分配给4个字节,其取值范围是 10-381038和-1038-10-38。,2.2 基本数据类型,(2)double 型 常量: 21389.5439d(d可以省略),23189908.987,123.0,6e-140(6乘10的-140次方,科学计数法)。 变量的定义: 使用关键字double来定义double型变量。double型变量,内存分配给8个字节,double型变量的取值范围大约是10-30810308 和-10308 -10-308。,返回,2.3 基本数据类型的
7、转换,基本数据类型的转换就是把一种基本数据类型变量转变成另一种基本类型变量。下列基本类型会涉及数据转换,不包括逻辑类型和字符类型。我们将这些类型按精度从“低”到“高”排列了顺序: byte short int long float double 当把级别低的变量的值赋给级别高的变量时,系统自动完成数据类型的转换,如int型转换成long型。当把级别高的变量的值赋给级别低的变量时,必须使用显示类型转换运算。显示转换的格式: (类型名)要转换的值;,2.3 基本数据类型的转换,例如 int x=(int)34.89; 输出x将是34,强制转换运算可能导致精度的损失。当把一个整数赋值给一个byte、
8、short、int或long型变量时,不可以超出这些变量的取值范围,否则必须进行类型转换运算。 下面我们看一个例子: 程序运行结果见右图:,返回,2.4 数据的输入与输出,由于C语言出现的比较早,那个时候还没有图形用户界面的概念(Graphics User Interface),因此,C语言提供了许多用来输入、输出数据的函数,例如printf 、scanf等。 Java不象C,提供在命令行进行数据输入、输出的功能不多。 关于输入、输出我们将在第九章详细介绍,现在只需知道它的作用是在命令行窗口(例如,MS-DOS窗口)输出数据即可。Sun公司新推出的JDK1.5又新增了一些在命令行进行数据输入、
9、输出的功能。,2.4 数据的输入与输出,1数据输出: System.out.printf System.out.printf的功能完全类似C语言中的printf函数。pringf的一般格式: printf(格式控制部分,表达式1,表达式2,表达式n); 例如: System.out.printf(“点的坐标为(%d,%d)”,x,y); 输出: 点的坐标为(200,300) Printf方法的用法与C语言相同。 下面我们看一个例子,来进一步了解System.out.printf数据输出。,Printf()的格式控制部分,格式控制部分由格式控制符和普通字符组成。格式控制符用来输出表达式的值,普通
10、字符原样输出。 d输出整数类型数据。 c输出字符类型数据。 f输出浮点类型数据,最多保留6位小数。 s输出字符串类型数据。 输出数据时,也可以控制数据在命令行的位置: md输出的int类型数据占m列。 m.nf输出的浮点数据占m列,保留n位小数。 Java提倡用: n表示回车换行。,2.4 数据的输入与输出,2数据的输入:Scanner Scanner是SDK1.5新增的一个类,可以使用该类创建一个对象: Scanner reader=new Scanner(System.in); 然后reader对象调用下列方法(函数),读取用户在命令行输入的各种数据类型, nextByte(), next
11、Double(), nextFloat(), nextInt(), nextLine(),nextLong(), nextShort()。,2.4 数据的输入与输出,上述方法执行时都会堵塞,等待你在命令行输入数据回车确认。 下面让我们来看一个例子,来更好的了解Scanner语句,在这个例子中,用户在键盘依次输入若干个数字,每输入一个数字都需要按回车键确认,最后在键盘输入一个非数字字符结束整个的输入操作过程。程序将计算出这些数的和及平均值。,返回,2.5 数组,数组是相同类型的数据按顺序组成的一种复合数据类型。通过数组名加数组下标来使用数组中的数据。下标从0开始。 1声明数组 声明数组包括数组的
12、名字、数组包含的元素的数据类型。 声明一维数组有下列两种格式: 数组元素类型 数组名字; 数组元素类型 数组名字;,2.5 数组,声明二维数组有下列两种格式: 数组元素类型 数组名字; 数组元素类型 数组名字; 2创建数组 声明数组仅仅是给出了数组名和元素的数据类型,要想使用数组还必须为它分配内存空间,即创建数组。在为数组分配内存空间时必须指明数组的长度。格式如下: 数组名字 = new 数组元素的类型数组元素的个数; 例如: boy = new float4;,2.5 数组,0x785BA,数组的内存模式,36.50,12.87,68.78,96.67,2.5 数组,3数组元素的使用 一维数
13、组通过下标符访问自己的元素,如boy0,boy1等。需要注意的是下标从0开始,因此,数组若是7个元素,下标到6为止,如果你将来使用下标超过6将会发生异常(数组下标越界)。 二维数组也通过下标符访问自己的元素,如a01,a12等 。下标也是从0开始。,2.5 数组,4数组的初始化 创建数组后,系统会给每个数组元素一个默认的值,如,float型是0.0。 我们在声明数组时同时也还可以给数组的元素一个初始值,如: float boy= 21.3f,23.89f,2.0f,23f,778.98f;,数组属于引用型变量,因此两个相同类型的数组如果具有相同的引用,它们就有完全相同的元素。例如,对于 int a=1,2,3,b=4,5; 数组变量a和b分别存放着不同的引用。但是,如果使用了赋值语句:a=b;那么,a中存放的引用就和b的相同,这时系统将释放最初分配给数组a的元素,使得a的元素和b的元素相同,即a0,a1就是b0,b1,而最初分配给数组a的三个元素已不复存在 .,2.5 数组,下面让我们结合这个例子来看怎样使用数组。,2.5 数组,返回,0xB9671,0xB8321,0xB9671,Unicode标准字符集,Java语言使用; 可识别65536个字符; 前128个字符为ASCII码; 包含了世界上几乎所有语言中的“字母”;,返回,
链接地址:https://www.31doc.com/p-2124776.html