JAVA程序设计基础第3章陈国君.ppt
《JAVA程序设计基础第3章陈国君.ppt》由会员分享,可在线阅读,更多相关《JAVA程序设计基础第3章陈国君.ppt(75页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第第3 3章章JavaJava语言基础语言基础1通过本章的学习,主要掌握以下知识点:通过本章的学习,主要掌握以下知识点:Java使用的数据类型使用的数据类型 数据类型转换数据类型转换 由键盘输入数据由键盘输入数据 运算符与表达式运算符与表达式 本章的重点:本章的重点:由键盘输入数据由键盘输入数据本章的难点:本章的难点:数据类型转换数据类型转换 表达式及运算符的优先级、结合性表达式及运算符的优先级、结合性 本本章章主主要要介介绍绍编编写写Java程程序序必必须须掌掌握握的的若若干干语语言言基基础础知知识识,包包括括数数据据类类型型、变变量量、常常量量、表表达达式式等等。掌掌握握这这些些基基础础知
2、知识识,是是编编写正确写正确Java程序的前提条件。程序的前提条件。3.1 数据类型数据类型 在在程程序序设设计计中中,数数据据是是程程序序的的必必要要组组成成部部分分,也也是是程程序序处处理理的的对对象象。不不同同的的数数据据有有不不同同的的数数据据类类型型,不不同同的的数数据据类类型型有有不不同同的的数数据据结结构构、不不同同的的存存储储方方式式,并并且且参参与与的的运运算算也也不不相相同同。通通常常计计算算机机语语言言将将数数据据按按其其性性质质进进行行分分类类,每每一一类类称称为为一一种种数数据据类类型型(data type)。数数据据类类型型定定义义了了数数据据的的性性质质、取取值值
3、范范围、存储方式以及对数据所能进行的运算和操作。围、存储方式以及对数据所能进行的运算和操作。Java中中的的数数据据类类型型分分为为两两大大类类,一一类类是是基基本本数数据据类类型型(primitive types),另另一一类类是是引引用用类类型型(reference types)。基本数据类型有基本数据类型有:整型整型(integral)浮点型浮点型(floting)逻辑型逻辑型(logical)字符型字符型(textual)引用类型包括引用类型包括:类类(class)数组数组(array)接口接口(interface)Java定义了定义了4类共类共8种基本类型,它们的分类及种基本类型,它
4、们的分类及关键字如下:关键字如下:整型:整型:byte,short,int,long。浮点型:浮点型:float,double。逻辑型:逻辑型:boolean。字符型:字符型:char。1整型整型整数有正整数、零、负整数,其含义与数学整数有正整数、零、负整数,其含义与数学中的含义相同。有三种进制表示形式。中的含义相同。有三种进制表示形式。Java定义了四种表示整数的类型:字节型定义了四种表示整数的类型:字节型(byte)、短整型、短整型(short)、整型、整型(int)、长整型、长整型(long)。每种整型的数据都是带符号位的。每种整型的数据都是带符号位的。Java的每种数据类型都对应的每种
5、数据类型都对应个默认的数值,使得这个默认的数值,使得这种数据类型变量的取值总是确定的,体现了其安种数据类型变量的取值总是确定的,体现了其安全性。它们的特性如表全性。它们的特性如表3.1所示。所示。表表3.1 Java的四种整型的四种整型类类 型型数据位数据位范范 围围byte(字字节节型型)8-128127,即,即2727-1Short(短整型短整型)16-32 76832 767,即,即-215215-1int(整型整型)32-2 147 483 6482 147 483 647,即,即-231231-1long(长长整型整型)64-9 223 372 036 854 775 8089 22
6、3 372 036 854 775 807,即即-263263-l2浮点型浮点型Java用浮点型表示数学中的实数,也就是说用浮点型表示数学中的实数,也就是说既有整数部分又有小数部分的数。浮点数有两种既有整数部分又有小数部分的数。浮点数有两种表示方式。表示方式。标准计数法标准计数法科学计数法科学计数法Java的浮点型有单精度浮点的浮点型有单精度浮点(float)和双精和双精度浮点度浮点(double)两种。它们的宽度和范围如表两种。它们的宽度和范围如表3.2所示。所示。表表3.2 Java的两种浮点型的两种浮点型类类型型数据位数据位范范围围float(单单精度浮点精度浮点)321.4E-453.
7、4E+38double(双精度浮点双精度浮点)644.9E-3241.8E+3083逻辑型逻辑型逻辑型逻辑型(boolean)用来表示逻辑值,也称用来表示逻辑值,也称为布尔型。它只有为布尔型。它只有true和和false两个取值。其中,两个取值。其中,true代表代表“真真”,false代表代表“假假”,true和和false不能转换成数字表示形式。不能转换成数字表示形式。4字符型字符型字符型字符型(char)用来存储字符。用来存储字符。Java语言是用语言是用Unicode编码表达的字符,在内存中占两个字节。编码表达的字符,在内存中占两个字节。由于由于Java的字符类型采用了的字符类型采用了
8、Unicode这种新的国这种新的国际标准编码方案,因而便于东方字符和西方字符际标准编码方案,因而便于东方字符和西方字符的处理。因此,与其他语言相比,的处理。因此,与其他语言相比,Java处理多语处理多语种的能力大大加强。种的能力大大加强。说明说明l字符型数据只表示单个字符,定界符为。lJava语言中所有可见的ASCII字符都可以用单引号括起来成为字符。l字符型数据可以转化成整数。取值在065535之间。现将现将Java的的4类类8种基本数据类型总结归纳成表种基本数据类型总结归纳成表3.3。表表3.3 Java的基本数据类型的基本数据类型数据数据类类型型关关键键字字占用字占用字节节数数默默认认数
9、数值值取取值值范范围围布布尔尔型型boolean1falsetrue,false字字节节型型byte10-128127短整型短整型short20-3276832767整型整型int40-21474836482147483647长长整型整型long80L-92233720368547758089223372036854775807单单精度浮点型精度浮点型float40.0F1.410-453.41038双精度型双精度型double80.0D4.910-3241.810308字符型字符型char2u0000u0000uffff为了使用上的方便为了使用上的方便Java提供了数值型数据的最提供了数值型
10、数据的最大值与最小值的标识符及常量值。如表大值与最小值的标识符及常量值。如表3.4所示。所示。表表3.4 数值型常量的特殊值代码数值型常量的特殊值代码 数据数据类类型型所在的所在的类类最小最小值值代代码码最大最大值值代代码码byteJava.lang.ByteByte.MIN_VALUEByte.MAX_VALUEshortJava.lang.ShortShort.MIN_VALUEShort.MAX_VALUEintJava.lang.IntegerInteger.MIN_VALUEInteger.MAX_VALUElongJava.lang.LongLong.MIN_VALUELong.M
11、AX_VALUEfloatJava.lang.FloatFloat.MIN_VALUEFloat.MAX_VALUEdoubleJava.lang.DoubleDouble.MIN_VALUEDouble.MAX_VALUE3.2 关键字与标识符关键字与标识符 1关键字关键字关键字关键字(keyword)是是Java中具有特殊含义的字符序中具有特殊含义的字符序列,因此列,因此Java不允许用户对关键字赋予其他的含义。不允许用户对关键字赋予其他的含义。Java定义的关键字如表定义的关键字如表3.5所示。所示。表3.5 Java定义的关键字abstractbooleanbreakbytecasec
12、atchcharclasscontinuedefaultdodoubleelseextendsfalsefinalfinallyfloatforifimplementsimportinstanceofintinterfacelongnativenewnullpackageprivateprotectedpublicreturnshortstaticsuperswitchsynchronizedthisthrowthrowstransienttruetryvoidvolatilewhile2标识符标识符Java用标识符用标识符(identifier)表示变量名、类表示变量名、类名和方法名。也就是
13、说,任何一个变量、常量、名和方法名。也就是说,任何一个变量、常量、方法、对象和类都需要有名字,这些名字就是标方法、对象和类都需要有名字,这些名字就是标识符。标识符可以由编程者自由指定,但是需要识符。标识符可以由编程者自由指定,但是需要遵循一定的语法规定。标识符要满足如下的规定:遵循一定的语法规定。标识符要满足如下的规定:(1)标识符可以由字母、数字和下划线标识符可以由字母、数字和下划线(_)、美元符号美元符号($)组合而成;组合而成;(2)标识符必须以字母、下划线或美元符号标识符必须以字母、下划线或美元符号开头,不能以数字开头。开头,不能以数字开头。Java编码习惯编码习惯l类名首字母大写。l
14、变量、方法及对象首字母小写。l标识符所包含的单词紧靠在一起,大写首字母。l常量应该大写。lJava包全部小写。3.3 常量常量常量存储的是在程序中不能被修改的固定值,常量存储的是在程序中不能被修改的固定值,也就是说常量是在程序运行的整个过程中保持其值也就是说常量是在程序运行的整个过程中保持其值不改变的量。不改变的量。Java中的常量也是有类型的,包括整中的常量也是有类型的,包括整型、浮点型、逻辑型、字符型和字符串型常量。型、浮点型、逻辑型、字符型和字符串型常量。1整型常量整型常量整型常量可以用来给整型变量赋值,整型常整型常量可以用来给整型变量赋值,整型常量可以采用十进制、八进制和十六进制表示。
15、量可以采用十进制、八进制和十六进制表示。2浮点型常量浮点型常量 浮点型常量表示的是可以含有小数部分的数浮点型常量表示的是可以含有小数部分的数值常量。根据占用内存长度的不同,可以分为一般值常量。根据占用内存长度的不同,可以分为一般浮点浮点(单精度单精度)常量和双精度浮点常量两种。其中,常量和双精度浮点常量两种。其中,单精度常量后跟一个字母单精度常量后跟一个字母f或或F,双精度常量后跟一,双精度常量后跟一个字母个字母d或或D。双精度常量后的。双精度常量后的d或或D可以省略。可以省略。转义符是一些有特殊含义、很难用一般方式转义符是一些有特殊含义、很难用一般方式来表达的字符,如回车、换行等。为了表达清
16、楚来表达的字符,如回车、换行等。为了表达清楚这些特殊字符,这些特殊字符,Java中引入了一些特别的定义。中引入了一些特别的定义。所有的转义符都用反斜线所有的转义符都用反斜线()开头,后面跟着一开头,后面跟着一个字符来表示某个特定的转义符,如表个字符来表示某个特定的转义符,如表3.6所示。所示。转义转义字符字符所代表的意所代表的意义义f换页(Form feed),走纸到下一页。b退格(Backspace),后退一格。n换行(New line),将光标移到下一行的开始。r回车(Carriage return),将光标移到当前行的行首,但不移到下一行。t横向跳格(Tab),将光标移到下一个制表符位置
17、。反斜线字符(Backslash),输出一个反斜杠。单引号字符(Single quote),输出一个单引号。双引号字符(Double quote),输出一个双引号。uxxxx1到4位十六进制数(xxxx)所表示的unicode字符。ddd1到3位八制数(ddd)所表示的unicode字符,范围在八进制的000377之间。表3.6 常用的转义字符5字符串常量字符串常量字符串常量是用双引号括起的一串若干个字字符串常量是用双引号括起的一串若干个字符符(可以是可以是0个个)。字符串中可以包括转义符。字符串中可以包括转义符。6.常量的声明常量的声明常量声明的形式与变量声明基本一样,只需用常量声明的形式与
18、变量声明基本一样,只需用关键字关键字final标识,通常标识,通常final写在最前面。例如,写在最前面。例如,final int MAX10;final float PI3.14f;3.4 变量变量在程序中使用的值大多是需要经常变化的数据,在程序中使用的值大多是需要经常变化的数据,用常数值表示显然是不够的,因此每一种计算机语用常数值表示显然是不够的,因此每一种计算机语言都使用变量言都使用变量(variable)来存储数据,变量的值在来存储数据,变量的值在程序中是可以改变的,使用变量的原则是程序中是可以改变的,使用变量的原则是“先声明先声明后使用后使用”,即变量在使用前必须先声明。,即变量在使
19、用前必须先声明。1变量声明变量声明 计算机程序是通过内存变量来操纵内存中的计算机程序是通过内存变量来操纵内存中的数据,所以程序在使用任何变量之前首先应该在数据,所以程序在使用任何变量之前首先应该在该变量和内存单元之间建立联系,这个过程称为该变量和内存单元之间建立联系,这个过程称为变量的声明或称变量的定义。变量的声明或称变量的定义。变量具有三个基本要素:名字、类型和值。变量具有三个基本要素:名字、类型和值。变量声明的格式如下:变量声明的格式如下:=,=例如,例如,int i,j,k;在声明变量的同时也可以对变量进行初始化,即赋在声明变量的同时也可以对变量进行初始化,即赋初值。例如,初值。例如,i
20、nt i0;2变量的赋值变量的赋值当声明一个变量并没有赋初值或需要重新对变当声明一个变量并没有赋初值或需要重新对变量赋值时,就需要使用赋值语句。量赋值时,就需要使用赋值语句。Java语言的赋值语言的赋值语句同其他计算机语言的赋值语相同,其格式为:语句同其他计算机语言的赋值语相同,其格式为:变量名变量名=值值下面举例来说明。下面举例来说明。boolean b=true;/声明声明boolean型变量并赋值型变量并赋值 int x,y=8;/声明声明int型变量型变量 float f=2.718f;/声明声明float型变量并赋值型变量并赋值 double d=3.1415;/声明声明double
21、型变量并赋值型变量并赋值 char c;/声明声明char型变量型变量 c=u0031;/为为char型变量赋值型变量赋值 x=12;/为为int型变量赋值型变量赋值3.5数据类型转换数据类型转换Java的数据类型在定义时就已经决定,因此的数据类型在定义时就已经决定,因此不能随意转换成其他的数据类型,但不能随意转换成其他的数据类型,但Java容许用容许用户有限度地做类型转换处理,这就是所谓的数据户有限度地做类型转换处理,这就是所谓的数据类型转换,简称类型转换。类型转换就是在类型转换,简称类型转换。类型转换就是在Java程序中,常数或变量从一种数据类型转换到另一程序中,常数或变量从一种数据类型转
22、换到另一种数据类型。种数据类型。一、数值型不同类型数据的转换一、数值型不同类型数据的转换由于数值型也分为不同的类型,所以数值型数由于数值型也分为不同的类型,所以数值型数据也有类型转换问题。据也有类型转换问题。1自动类型转换自动类型转换在程序中已经定义好的数值型的变量,若是想在程序中已经定义好的数值型的变量,若是想以另一种类型表示时,以另一种类型表示时,Java会在下列条件同时成立会在下列条件同时成立时,自动进行数据类型的转换:时,自动进行数据类型的转换:(1)转换前的数据类型与转换后的类型兼容。)转换前的数据类型与转换后的类型兼容。(2)转换后的数据类型的表示范围比转换前的)转换后的数据类型的
23、表示范围比转换前的类型大。类型大。【例3.1】数据类型的自动转换。/app3_1.java 类型自动转换public class app3_1 public static void main(String args)int a=155;float b=21.0f;System.out.println(”a=”+a+”,b=”+b);/输出a,b的值System.out.println(”a/b=”+(a/b);/输出a/b的值 输出结果为:a=155,b=21.0a/b=7.38095242强制类型转换强制类型转换如果要将较长的数据转换成较短的数据时,就如果要将较长的数据转换成较短的数据时,就
24、要进行强制类型转换。强制类型转换的格式如下:要进行强制类型转换。强制类型转换的格式如下:(欲转换的数据类型)变量名(欲转换的数据类型)变量名【例【例3.2】整型与浮点数据类型的自动转换。】整型与浮点数据类型的自动转换。/app3_2.java 整数与浮点数的类型转换整数与浮点数的类型转换public class app3_2 public static void main(String args)int a=155;int b=9;float g,h;System.out.println(”a=”+a+”,b=”+b);/输出输出a,b的值的值g=a/b;/将将a除以除以b的结果放在的结果放在
25、g中中System.out.println(”a/b=”+g+”n”);/输出输出g的值的值System.out.println(”a=”+a+”,b=”+b);/输出输出a,b的值的值h=(float)a/b;/先将先将a强制转换成强制转换成float类型后再参加运算类型后再参加运算 System.out.println(”a/b=”+h);/输出输出h的值的值 程序执行结果如下:程序执行结果如下:a=155,b=9a/b=17.0a=155,b=9a/b=17.222221public class TestConvert public static void main(String arg
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- JAVA 程序设计 基础 国君
限制150内