Java2JAVA语言基础.ppt_第1页
Java2JAVA语言基础.ppt_第2页
Java2JAVA语言基础.ppt_第3页
Java2JAVA语言基础.ppt_第4页
Java2JAVA语言基础.ppt_第5页
已阅读5页,还剩38页未读 继续免费阅读

下载本文档

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

文档简介

1,第2章JAVA语言基础,标识符、关键字和类型表达式与程序流控制数组,2,标识符,标识符包括:变量名,类名,方法(函数)名以字母,_,或$开头大小写敏感,且长度没有限定如:usernameuser_name_sys_varl$change,3,风格约定:_,$不作为变量名,方法名开头变量名、方法名首单词小写,其余单词只有首字母大写如anyVariableWorld接口名、类名首单词第一个字母大写。常量:完全大写注释:/注释一行/*/注释一行或多行/*可用javadoc命令转化为HTML文件*/,标识符,4,关键字,*当前不使用*为Java2增加的,5,Java基本数据类型,逻辑型文字型整数类型浮点型,6,逻辑型:booleanadj.布尔数学体系的,取值:true,false例如:booleantruthn.事实;真理;实质;诚实=true;,基本数据类型-逻辑型与文字型,7,文字型:char、Stringchar:16位的unicode(国际码)字符。如,charmychar=Q;unicode字符集是一套字符编码系统,可以支持各类文字的字符,达34168个字符。定义形式:a;t;u?String是类,Stringgreeting=“GoodMorning!n”;,基本数据类型-文字型,8,整数类型:byte,short,int和long,类型长度取值范围byte8位-2727-1short16位-215215-1int32位-231231-1long64位-263263-1,基本数据类型-整数类型,9,Java中缺省整型是int可有3种形式:十进制、八进制、十六进制十进制八进制十六进制int2407710XAB07long24L0771L0XAB07L,整型常量,10,浮点型:float和double长度:float:32位double:64位缺省是double类型,如3.14(double型)表达方法:E或e-科学记数法6.02e23F或f-表示float类型,6.02e23FD或d-表示double型,2.718D,基本数据类型-浮点型,11,JDK1.6中的枚举类型,publicenumn.枚举,列举型别;电话号码映射NamesLi,Zhang,Wang,Zhao,ChenNamesname=Names.Wang;,12,类的初步概念,“日期”类型的两种不同表达:方式一:intday,month,year;/定义年、月、日intd1,m1,y1;/定义一个日期intd2,m2,y2;/定义另一个日期方式二:classDateintday;intmonth;intyear;voidsetDate(inta,intb,intc).Java用class创建新的类型。,13,类的变量的声明与引用,在Java中,一个类的变量声明后,不能直接引用,必须经过实例化:基本类型声明后,直接开空间。如:inta;a=12;非基本类型不直接开空间,而是开辟引用空间,数据空间没有开。只有通过实例化,才能给数据开辟空间。,14,类的变量的声明与引用,例:1Datetoday;2today=newDate();,today,15,引用变量之间的赋值,1Datea,b;2a=newDate();3b=a;,0 xabcd,0 xabcd,16,运算符与表达式,与C不同之处:Java是强类型语言,类型限制比C严格,运算符的操作对象的类型会受到更多限制。Java不提供指针运算符,增加了对象操作符instanceof,字符串运算符+和零填充的右移等。,17,算术运算操作符:+,-,*,/,%,+,-关系操作符:,=,Stringname=“Pete”+“Seymour”;Stringtitle=salutation+name;则title值:Dr.PeteSeymour,20,右移操作符和,:带符号右移10102111010.:无符号右移,以0填充10102001010.,21,Java强制类型转换,一般形式:(type)expression例:(float)x/2对强制类型转换的限制:整型与浮点型可以相互转换,但基本类型和数组、对象等复合类型之间不能互相转换。,22,位操作示例,publicclassBitwiseDemostaticfinalintVISIBLE=1;staticfinalintDRAGGABLE=2;staticfinalintSELECTABLE=4;staticfinalintEDITABLE=8;publicstaticvoidmain(Stringargs)intflags=0;flags=flags|VISIBLE;flags=flags|DRAGGABLE;if(flags,23,flags=flags|EDITABLE;if(flags,FlagsareVisibleandDraggable.FlagsarenowalsoEditable.,运行结果:,24,程序流控制,whiledowhileforIfelseswitch,25,While语句举例,publicclassWhileDemopublicstaticvoidmain(Stringargs)StringcopyFromMe=Copythisstringuntilyou+encountertheletterg.;StringBuffercopyToMe=newStringBuffer();inti=0;charc=copyFromMe.charAt(i);while(c!=g)copyToMe.append(c);c=copyFromMe.charAt(+i);System.out.println(copyToMe);,Copythisstrin,结果:,26,do-while语句示例,publicclassDoWhileDemopublicstaticvoidmain(Stringargs)StringcopyFromMe=Copythisstringuntilyou+encountertheletterg.;StringBuffercopyToMe=newStringBuffer();inti=0;charc=copyFromMe.charAt(i);docopyToMe.append(c);c=copyFromMe.charAt(+i);while(c!=g);System.out.println(copyToMe);,Copythisstrin,结果:,27,JDK1.6中for循环的优化,将一个集合作为一个整体放入for循环中,在for循环中可将集合中的元素进行逐个处理。Stringnames=Wang,Zhang,Li,Wu;for(Stringoption:names)System.out.println(option);,28,特殊跳转语句,breaklabel从switch语句、循环语句中跳出。continuelabel跳过标号循环体的其余部分,不带label跳过最内层循环的剩余语句。label:statement,29,特殊跳转语句举例,1Loop:while(true)2for()3switch()4case-1:5casen:6breakloop;7891011test:for()1213while()14if()1516continuetest;171819,/跳出while去11行,/跳到11行,30,数组,声明数组数组的创建与初始化多维数组数组拷贝,31,数组,数组中的元素都是同一种类型。数组的长度在创建的时候确定,并且在创建后固定不变。如果要建立存储不同类型数据的集合,或者要求集合的长度可以动态变化,可以使用Collection(集合)类。,32,数组声明,可以声明基本类型和类类型的数组声明包含两部分:数组类型与数组名称。格式:C,C+标准形式:chars;Pointp;chars;Pointp;,33,数组声明,在Java中数组作为类来处理,所以数组声明并不创建实例对象,而是创建一个可用来引用该数组的引用。,34,数组的创建与初始化,可以象其它对象一样,使用new来创建,格式:newelementTypearraySize例:s=newchar20;/创建有20个字符的数组p=newPoint100;/创建100个Point的引用数组,35,数组的初始化,数组元素是被初始化的。字符串-u0000,null对象数组-null用初始值创建数组Stringnames=“Jack”,“Wang”,“Lee”;inta=1,2,3;Dated=newDate(),newDate(),newDate(),36,对象数组,除了基本类型以外,还可以创建对象类型的数组。Pointp;p=newPoint100;/创建100个引用创建100个Point对象:p0=newPoint();p1=newPoint();,37,对象数组举例,publicclassArrayOfStringsDemopublicstaticvoidmain(Stringargs)StringanArray=StringOne,StringTwo,StringThree;for(inti=0;ianArray.length;i+)System.out.println(anArrayi.toLowerCase();,38,多维数组,声明方法inta;或inta;实例化a=newint44;/直接为每一维分配内存,生成规则数组a=newint4;/只有最后维可以不给值,其它都要给,可/以生成不规则数组a0=newint10;a1=newint5;数组成员变量length-数组元素个数:a=newint1012;a.length=10;a0.length=12;,39,多维数组示例,publicclassArrayOfArraysDemo2publicstaticvoidmain(Stringargs)intaMatrix=newint4;/populatematrixfor(inti=0;iaMatrix.length;i+)aMatrixi=newint5;/createsub-arrayfor(intj=0;jaMatrixi.length;j+)aMatrixij=i+j;/printmatrixfor(inti=0;iaMatrix.length;i+)for(intj=0;jaMatrixi.length;j+)System.out.print(aMatrixij+);System.out.println();,40,数组拷贝,数组一旦创建,其大小不可变,但已有的数组变量可指向全新的数组;该数组原指的内容丢失inta=newint6;a=newint10;/不必重新声明a数组变量之间赋值是引用赋值。1inta=newint6;2intb;3b=a;,41,数组数据的复制,通过拷贝数组的函数。System.arrayCopy(Objectsource,intsrcIndex,Objectdest,intde

温馨提示

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

评论

0/150

提交评论