Java实用教程第第章基本数据类型与数组_第1页
Java实用教程第第章基本数据类型与数组_第2页
Java实用教程第第章基本数据类型与数组_第3页
Java实用教程第第章基本数据类型与数组_第4页
Java实用教程第第章基本数据类型与数组_第5页
已阅读5页,还剩15页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

注意:开始用功了!第1页《Java2实用教程(第4版)》第2章配合例子源代码一起使用Powerpoint制作:耿祥义张跃平基本数据类型与数组

第2页主要内容标识符与关键字基本数据类型类型转换运算输入、输出数据数组导读第3页§2.1标识符与关键字

2.1.1.标识符

用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符,简单地说,标识符就是一个名字.标识符由字母、下划线、美元符号和数字组成,长度不受限制。标识符的第一个字符不能是数字字符。标识符不能是关键字(关键字见下面的2.1.3节)标识符不能是true、false和null(尽管true、false和null不是关键字)2.1.2Unicode字符集

Java语言使用Unicode标准字符集,该字符集由UNICODE协会管理并接受其技术上的修改,最多可以识别65536个字符.2.1.3关键字

关键字就是具有特定用途或被赋予特定意义的一些单词,不可以把关键字作为标识符来用.第4页§2.2基本数据类型

有8种基本数据类型,分别是:boolean、byte、short、int、long、float、double、char。

这8种基本数据类型习惯上可分为以下四大类型:逻辑类型:boolean整数类型:byte、short、int、long字符类型:char浮点类型:float、double

第5页2.2.1逻辑类型

常量:true,false。变量:使用关键字boolean来声明逻辑变量,声明时也可以赋给初值,例如:

booleanx,ok=true,关闭=false;第6页§2.2.2整数类型1.int型常量:123,6000(十进制),077(八进制),0x3ABC(十六进制)。

变量:使用关键字int来声明int型变量,声明时也可以赋给初值,例如:intx=12,平均=9898,jiafei;

对于int型变量,内存分配给4个字节(byte),占32位。2.byte型

常量:Java中不存在byte型常量的表示法,但可以把一定范围内的int型常量赋值给byte型变量。

变量:使用关键字byte来声明byte型变量例如:bytex=-12,tom=28,漂亮=98;

对于byte型内存分配给1个字节,占8位。3.short型

常量:和byte型类似,Java中也不存在short型常量的表示法,但可以把一定范围内的int型常量赋值给short型变量。变量:使用关键字short来声明short型变量例如:shortx=12,y=1234;

对于short型变量,内存分配给2个字节,占16位.4.long型

常量:long型常量用后缀L来表示,例如108L(十进制)、07123L(八进制)、0x3ABCL(十六进制)。变量:使用关键字long来声明long型变量,例如:longwidth=12L,height=2005L,length;对于long型变量,内存分配给8个字节,占64位。第7页§2.2.3字符类型1.常量:常量:‘A’,‘b’,‘?’,‘!’,‘9’,‘好’,‘\t’,‘き’,‘モ’等,即用单引号扩起的Unicode表中的一个字符。

2.变量:

使用关键字char来声明char型变量,例如:charch=‘A’,home=‘家’,handsome=‘酷’;

对于char型变量,内存分配给2个字节,占16位

3.转意字符常量:有些字符(如回车符)不能通过键盘输入到字符串或程序中,就需要使用转意字符常量,例如:\n(换行),\b(退格),\t(水平制表),\‘(单引号),\“(双引号),\\(反斜线)等。4.要观察一个字符在Unicode表中的顺序位置,可以使用int型显示转换,如(int)'a'或intp='a'。5.如果要得到一个0~65535之间的数所代表的Unicode表中相应位置上的字符

必须使用char型显示转换。例子1

第8页例子1中,分别用类型转换来显示一些字符在Unicode表中的位置,以及Unicode表中某些位置上的字符,运行效果如图2.1。

例子1第9页§2.2.4浮点类型1.float型常量:453.5439f,21379.987F,231.0f(小数表示法),2e40f(2乘10的40次方,指数表示法)。需要特别注意的是:常量后面必须要有后缀“f”或“F”。

变量:使用关键字float来声明float型变量,例如:floatx=22.76f,tom=1234.987f,weight=1e-12F;

精度:float变量在存储float型数据时保留8位有效数字,实际精度取决于具体数值。

对于float型变量,内存分配给4个字节,占32位。2.double型常量:2389.539d,2318908.987,0.05(小数表示法),1e-90(1乘10的-90次方,指数表示法)。对于double常量,后面可以有后缀“d”或“D”,但允许省略该后缀。变量:使用关键字double来声明double型变量,例如:doubleheight=23.345,width=34.56D,length=1e12;

对于double型变量,内存分配给8个字节,占64位。精度:double变量在存储double型数据时保留16位有效数字,实际精度取决于具体数值。第10页§2.3简单数据类型的级别与类型转换运算Java中数据的基本类型(不包括逻辑类型)按精度从“低”到“高”排列:byteshortcharintlongfloatdouble

★当把级别低的变量的值赋给级别高的变量时,系统自动完成数据类型的转换。例如:floatx=100;

★当把级别高的变量的值赋给级别低的变量时,必须使用显示类型转换运算。显示转换的格式:(类型名)要转换的值;例如

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

bytea=(byte)128;

第11页下面的例子2使用了类型转换运算,运行效果如图2.2。

例子2第12页§2.4从命令行输入、输出数据_1◆可以使用Scanner类创建一个对象:

Scannerreader=newScanner(System.in);◆reader对象调用下列方法,读取用户在命令行(例如,MS-DOS窗口)输入的各种基本类型数据:

nextBoolean()、nextByte()、nextShort()、nextInt()nextLong()、nextFloat()、nextDouble()。上述方法执行时都会堵塞,程序等待用户在命令行输入数据回车确认。2.4.1输入基本型数据

第13页例子3中,用户在键盘依次输入若干个数字,每输入一个数字都需要按回车键确认,在键盘输入数0结束整个的输入操作过程,程序将计算出这些数的和,运行效果如图2.3。

例子3第14页§2.4从命令行输入、输出数据_2

System.out.println()或System.out.print()可输出串值、表达式的值.二者的区别是前者输出数据后换行,后者不换行。允许使用并置符号:“+”将变量、表达式或一个常数值与一个字符串并置一起输出,如:

System.out.println(m+"个数的和为"+sum);System.out.println(":"+123+"大于"+122);注:

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

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输出基本型数据

第15页§2陵.5数组2.译5.杂1声明遮数组声明编一维柴数组雷有下胖列两慨种格非式:数组扑的元旅素类杀型错数组贝名[忘];数组勺的元击素类夜型狡[]夏数阿组名蛙;例如惠:fl指oa磨t秃bo党y[吊];ch局ar辆[黄]肉ca义t;声明述二维忆数组术有下泻列两爽种格桌式:数组佛的元秆素类奋型亡数组捆名[亲][茧];数组钓的元柏素类逗型钻[]低[]鸡数牌组名记;例如谎:fl猎oa舱t枣a[仗][蜻];Ch剃ar亿[忙][旅]胡b;2.禾5.扩2为数荒组分草配元可素为数汗组分基配元辈素的既格式雅如下贝:数组贤名课=ne缺w数组滔元素应的类抽型[榜数组息元素荐的个趴数]恩;例如会:bo丧y撞=记ne静w策fl烦oa像t[烈4]码;数组危属于炼引用鼻型变童量,筋数组涉变量恼中存月放着晚数组有的首宁元素叙的地索址,床通过存数组菌变量伙的名猎字加杀索引堵使用医数组姻的元茧素(临内存水示意拐如图2.咸4所示雾).比如闸:bo导y[哗0]登=同1质2;bo震y[裹1]这=妖2栽3.彩90存8F走;bo细y[祖2]跨=顶1茫00枝;bo绕y[舅3]挪=舍1郊0.般23浪f;第16页2.顿5.篇3数组术元素碍的使虏用一维脑数组杂通过百索引透符访扑问自辣己的阿元素蜜,如bo武y[骨0],bo拘y[熄1]等。你需要图注意金的是炎索引很从0开始.需要部注意急的是析索引敢从0毕开始败,因腾此,旧数组克若有政7个炭元素尺,那脊么索唱引到弯6为竭止,霞如果拔程序倾使用埋了如险下语家句:bo乡丰y[健7]懒=艺3唉84炊.9婚8f唤;程序珠可以帖编译腾通过弦,但世运行艘时将胶发生Ar击ra设yI击nd宵ex呢Ou拒tO椒fB冤ou抵nd条sE喇xc睁ep惊ti营on异常累,因把此在蓝使用泉数组盛时必浊须谨拒慎,灿防止诉索引纱越界搏。2.省5.加4le伴ng岁th的使棋用对于印一维持数组对,“港数组求名.le榨ng精th”的值口就是庄数组深中元劲素的祖个数格;对朴于二屋维数绩组“牌数组慰名.le花ng鼠th”的值详是它浓含有耀的一凶维数才组的蛾个数2.沿5.食5数组迈的初匆始化创建准数组螺后,贺系统浙会给方数组伙的每挣个元季素一轿个默版认的兰值,沟如,fl扁oa嫂t型是叹0.豪0。在声锋明数戚组的摊同时匆也可抹以给龟数组幅的元添素一辰个初霉始值详,如筒:fl眨oa片t绵bo难y

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论