教案PPT-Java平台与语法入门-第二部分-Java语法_第1页
教案PPT-Java平台与语法入门-第二部分-Java语法_第2页
教案PPT-Java平台与语法入门-第二部分-Java语法_第3页
教案PPT-Java平台与语法入门-第二部分-Java语法_第4页
教案PPT-Java平台与语法入门-第二部分-Java语法_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

Java平台与语法入门—第二部分:Java语法

版权Ultrawise教育产品研发部版权所有;未经Ultrawise教育产品研发部明确许可,不能为任何目的以任何形式复制或传播此文档的任何部分;本文档包含的信息如有更改,恕不另行通知;保留所有权利。

主要内容Java语法基础Java的标准输入与输出Java语法基础特殊符号标识符关键字数据类型变量定义表达式运算符流程控制跳转语句数组Java语法基础特殊符号注释单行注释://多行注释:/*…..*/

这两种注释只能通过打开源文件来查看。注释与程序

应是2:1多行注释:/**……*/

这个注释可以不打开源文件来查看,java中有一个 javadoc工具,它的作用是将源文件中的/**..*/注释单

独抽出来放在另一个文件中。

例如:javadoc–d.Hello.java,执行后,会在当前目

录下生成一个doc目录,里面文件就可查看注释了。Java语法基础其他符号;一个语句的结束{}一个语句块空白字符空格,tab,回车,换行等Java的标识符什么是标识符:程序中的组件名字,包括类名,变量名,方法名,包名等定义标识符的规则:以_,$,字母开头;只含有_,$,字母,数字;没有长度限制,不能有空格;大小写敏感不能使用java的关键字或保留字

Java语法基础例如:_abc√,$ABC√,2A×,A#×,For√,顺时√Java的关键字关键字对Java技术编译器有特殊的含义,它们可标识数据类型名或程序构造(construct)名。java中的关键字都是小写的;true、false和null为小写,而不是象在C++语言中那样为大写。严格地讲,它们不是关键字。sizeof运算符;所有类型的长度和表示是固定的,不依赖执行。Java语法基础goto和const不是Java编程语言中使用的关键字。enumassert已加入了java的关键字常用关键字图Java语法基础Java的数据类型数据类型的种类基本类型:8种booleantrue/falsebyte8位整型1个字节short16位整型2个字节int32位整型4个字节long64位整型8个字节char16位unicode字符2个字节double64位浮点数字型8个字节float32位浮点数字型4个字节Java语法基础String类型对象类型布尔型booleanb=true;Java中的boolean类型的取值只能是true,falseJava中的boolean类型不能与int通用,而在c++中可以C++中,0代表false,非0代表true整型byte:1个字节–128(-27)-127(27-1)short:2个字节–32768(-215)-32767(215-1)Java语法基础int:4个字节–2147483648(-231)-2147483647(-231-1)long:8个字节–263-263-1整型数据表示Long类型使用l或L来表示int的不同进制:十六进制用0x或H表示8进制用0或O表示10进制用D或10表示默认类型为intchar类型

char字符型为16位,2个字节,与c++不一样,采用的是unicode编码,unicode编码是统一编码,可包含字母,数字,符号,中文文字等unicode码是采用16进制表示的如‘\u0061’Java语法基础2个字节的unicode编码可以表示216个字符,字符使用单引号‘’来表示127个ASCII码全可表示英文字符,控制字符,数字,标点符表示其他语言的字符:中文,德语,法语,阿拉伯等一个char类型本质上是一个整型通过查询unicode编码集可以获取一个整型值对应的unicode字符unicode编码集包含了ASCII码集的在0-127内unicode编码值与ASCII码值一样,表示的字符也一样Java语法基础常见的ASCII码值:A:65a:970:48通过unicode码得到码值可以将16进制转换为10进制Java中的转义字符\’:‘单引号\”:“双引号\\:\顺斜杠\n:换行\t:tab制表符\b:退格\0:‘\u0000’unicode码值为0的空字符浮点数据类型:2种float:单精度,32位4个字节使用f或者F表示double:双精度64位8个字节默认类型使用d或者D表示Java语法基础浮点数据类型的存储方式-近似存储数据类型的转换自动类型转换a类型转换为b类型时,a的取值范围是b的取值范围的完全子集这就是自动类型转换在java的8种基本类型中,除boolean以外,其他7种类型都是可以相互转换的。7种原始类型之间可自动转换结构图byte→short→int→long→float→doublechar顺着箭头方向可自动转换;逆着箭头方向则是强制转换Java语法基础强制类型转换只要不能自动转换的,则只能是强制转换整型数据之间的强转:改变数据的符号;改变数值inta=0x2aff;byteb=(byte)a;b为-1强制转换的原理:从最低位开始取到目标类型长度为止整型之间的强转是保留二进制低位,去掉高位,需要考虑在内存中如何存储实型强转整型是保留整数,去掉小数,不考虑实型在内存中的如何存储String类型Java语法基础String类型:字符串类型,它不是java的8种基本类型,是类的类型String是java的一个类,这个类的实例叫做String对象Java中字符串用””双引号来引用Java中的字符串类不是以‘\0’结尾String类是Java中使用最多的类,它有很多有用的方法,查看jdk的api文档length():获得字符串的长度intindexOf(String/char):获得参数字符/字符串在改字符串中的第一次出现的位置索引,假如找不到则返回-1Java语法基础booleanequalsIgnoreCase(String):比较2个字符串内容是否相等,忽略大小写booleanequals(String):比较2个字符串内容是否相等,不忽略大小写booleancontains(charSequences):判断一个字符串中是否包含参数的子串Stringconcat(String):将当前String与参数String连接起来返回新串charcharAt(int):返回参数int指示位置上的字符使用+号来连接字符串Java语法基础Java的类类型Java的类类型不是表达一个简单的数据,而是表达一个较复杂的数据(复合数据)把类看作一个类型的话,它的使用其实和基本类型int等一样,只不过赋值是赋的一个复杂的复合类型数据,是new出的对象对象类型的存储方式即需要两个空间:引用空间,对象空间publicclassStudent{ publicStudent(){ }}Students=newStudent();Java语法基础Java的类类型Java的类类型不是表达一个简单的数据,而是表达一个较复杂的数据(复合数据)把类看作一个类型的话,它的使用其实和基本类型int等一样,只不过赋值是赋的一个复杂的复合类型数据,是new出的对象对象类型的存储方式即需要两个空间:引用空间,对象空间publicclassStudent{ publicStudent(){ }}Students=newStudent();Java语法基础Math类lang包下的类,它里面定义了很多方法来实现常用的数学运算Math类中的方法都是静态的Math类中的方法:abs():求绝对值sqrt():求平方根pow():求乘方cos(),sin(),tan(),ctan():数学的三角函数运算random():获得0-1之间的随机数Java中的常量Java语法基础常量定义常量是程序里持续不变的值,也称为字面量,是不能改变的数据常量类型常量包括整型常量,浮点型常量,字符型常量,字符串型常量,布尔型常量,空值常量整型常量:分为十进制,八进制,十六进制十进制不能以0开头,由0-9的数字组成,如223,453,4√023×八进制以0开头,由0-7数字组成,如023,065√0895×十六进制以0x或0X开头,由0-9,A-F组成,如0xff,0X97a√0xeg9×Java语法基础无论是哪种进制,若是长整型则以L结束,如0xffL,99L等等浮点类型常量:分为float(32位)和double(64位)型float:以f或F结束,如2ef,.4f,0f,5.022e+23f√Double:以d或D结束,如3.84d,3.6D布尔型常量:只有true,false两种值字符型常量:由英文字母,数字,转义序列,特殊字符等的字符表示,它的值就是字符本身,字符常量由‘’括起来,java中的字符占2个字节,由unicode码表示的,也可以以\u开头的unicode码表示字符。如‘a’,’\t’,’\u0027’,’2’字符串常量:是由双引号“”括起来的.如“hello”,”33”,”\t\u0024”空值常量:null表示空值,表示对象引用为空;在程序中经常用来做判断条件Java语法基础Java中的变量变量定义系统为程序分配的内存单元,存储数据的,用一个标识符来表示,其中的数据值是可以改变的,所以叫变量变量名与变量值定义变量的标识符叫变量名;内存所装载的数据值叫变量值;定义了变量后,程序就可以使用变量名来操作内存中的数据。例如intx=0,y;y=x+3;解释其实现原理变量的类型8种基本类型,引用类型(类,接口,数组)。Java语法基础Java的基本数据类型在任何操作系统中都具有相同的大小和属性,这也是java跨平台的特性,所以在所有系统中,相同类型的java变量取值不会改变。表达式与运算符赋值运算符:=,*=,/=,%=,+=,-=,<<=(左移位),>>=(右移位),>>>=,&=(按位与),^=(按位异或),|=(按位或)不会产生自动类型的提升比较运算符:>,>=,<<=,instanceof(比较类型)逻辑运算符:==,!=算术运算符:+,-,*,/,%移位运算符:>>(右移,右移一位等于除2),<<(左移,左移一位等于乘2),>>>(无符号右移)Java语法基础算术逻辑运算符:&,|,~,^;逻辑运算符:&&,||,!;操作数只能是布尔表达式条件运算符:?:,三目运算符;运算符优先级Java语法基础表达式:将运算符,变量连接在一起就组合为表达式。例:intb=12;,intc=13;,intd=b+c;Java运算中的常见问题bytea=1;a=a+2;×a+=2;√5/2等于2,(float)5/2等于2.5a+=a<<1;等价于a+a*2;等价于a*3>>与>>>的区别:inti1=20;i1>>1;i1为10,i1>>>1;i1为10inti2=-20;i2>>1;i2为-10i2>>>1;i2为2147483647(很大的数)Java中的算术逻辑符可以用在逻辑运算上,如(a>b)&(c>d)Java语法基础那么(a>b)&&(c>d)与(a>b)&(c>d)的区别:&&:短路运算符若a>b为假,则不再运算判断c>d了.&:非短路运算符,若a>b为假,则还会运算判断c>d.If((2>3)&&((c=2)<3)){System.out.println(c);}Java的流程控制语句顺序结构,选择结构,循环结构顺序结构:程序从上到下一行一行执行,中间没有任何跳转或判断,直到程序结束选择结构:if(条件语句){执行语句;}Java语法基础if(条件语句){执行语句块}else{执行语句块;}条件表达式?m:n表达式为true则取值m反之为nif(条件语句1){执行语句块1}……elseif(条件语句n){执行语句块n}else{不满足条件时执行语句块}switch(表达式){case:取值1

执行语句块1break;Java语法基础……………case:取值n

执行语句块2break;default:

执行语句块2break;}循环结构while(条件表达式){执行语句块}循环do{执行语句块}while(条件表达式);程序至少会执行一次循环

Java语法基础for(初始化表达式;循环条件表达式;循环后的操作表达式){执行语句块}能确定次数的循环流程跳转break;语句:跳出其所在的循环continue;语句:跳出当次循环的剩余部分,直接进入下一次循环各个控制结构语句是可以嵌套的Java语法基础Java的数组一维数组:在内存中是连续的空间,可以一次性定义一组相同类型的多个变量。int[]a;声明,a=newint[10];分配空间数组在java中也是对象,但它只有属性,没有方法的。a.length的值是数组的长度。数组的初始化: int[]a={3,7,54,24,98,1,0,5};√ int[]b=newint[]{4,6,8,32};√ int[]b1=newint[4]{8,4,3,1};×二维数组一维数组相当于一条线,二维数组相当于一个平面Java语法基础 int[][]a=newint[3][4];会分配空间 int[][]c=newint[3][];√int[][]c1=newint[][3];× int[][]b={{1,2,3,4},{5,6,7,8},{9,10,11,12}};Java的二维数组本质上是一维数组的一维数组,打印b.length为3;b[0],b[1],b[2]这又是三个一维数组b[0].length==b[1].length==b[2].length数组遍历数组也是对

温馨提示

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

评论

0/150

提交评论