版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java基本语法大全(全)第一页,共55页。例1编写一个简单的JavaApplication源程序:HelloWorldApp.java。程序的运行结果是输出一句话“HelloWorld!”。一、Java语言的基本元素第一页第二页,共55页。publicclassHelloWorldApp{/*类名*/ publicstaticvoidmain(Stringargs[]){/*主方法,程序入口*/ System.out.println("HelloWorld");/*输出*/ }}可以知道Java语言包含标识符、关键字、运算符和分隔符等元素。这些元素有着不同的语法含义和组成规则,它们互相配合,共同组成Java的语句。第二页第三页,共55页。在Java中,变量以及类和方法都需要一定的名称,这种名称就叫做标识符。所有的标识符都必须是以一个字母、下划线或美元符号“$”开头的一串字符,后面的字符可以包含字母、数字、下划线和美元符号。表1标识符命名正误对照表1标识符合法标识符非法标识符合法标识符非法标识符MyClassclassi2anIntintONE_HUNDREDONE-HUNDREDgroup77group
第三页第四页,共55页。标识符是由程序员自己定义的名称,可按上面的规则随意选取。不过,Java中有一个标识符命名约定:常量用大写字母,变量用小写字母开始,类以大写字母开始。如果一个变量名由多个单词构成,第一个单词后面的单词以大写字母开始,例如anInt。下划线虽然可以作为标识符的一员,但常用于常量名的单词分隔,因为常量名都是以大写字母单词命名的。还要注意一点,Java严格区分字母大小写,标识符中的大小写字母被认为是不同的两个字符。例如以下是4个不同的合法标识符:ad、Ad、aD、Da。第四页第五页,共55页。关键字是Java语言本身使用的标识符,它有其特定的语法含义,如public表示公有的,static为静态的。所有的Java关键字将不能被用作标识符,如for、while、boolean等都是Java语言的关键字。2.1.2关键字第五页第六页,共55页。1.注释符注释是程序员为了提高程序的可读性和可理解性,在源程序的开始或中间对程序的功能、作者、使用方法等所写的注解。注释仅用于阅读源程序,系统编译程序时,忽略其中的所有注释。注释有两种类型:(1)//注释一行。以“//”开始,最后以回车结束。一般作单行注释使用,可放在某个语句的后面。(2)/*…*/一行或多行注释。以“/*”开始,最后以“*/”结束,中间可写多行。2.1.3分隔符第六页第七页,共55页。2.空白符空白符包括空格、回车、换行和制表符(Tab键)等符号,用来作为程序中各种基本成份之间的分隔符。各基本成份之间可以有一个或多个空白符,其作用相同。系统编译程序时,只用空白符区分各种基本成分,然后忽略它。第七页第八页,共55页。3.普通分隔符普通分隔符和空白符的作用相同,用来区分程序中的各种基本成份,但它在程序中有确定的含义,不能忽略。Java有以下普通分隔符:.点号,用于分隔包、类或分隔引用变量中的变量和方法;;分号,是Java语句结束的标志;,逗号,分隔方法的参数和变量说明等;:冒号,说明语句标号;{}大括号,用来定义复合语句、方法体、类体及数组的初始化;第八页第九页,共55页。[]方括号,用来定义数组类型及引用数字的元素值;()圆括号,用于在方法定义和访问中将参数表括起来,或在表达式中定义运算的先后次序。第九页第十页,共55页。例2标识符、关键字和分隔符的使用。publicclassExample{publicstaticvoidmain(Stringargs[]){inti,c;...}}第十页第十一页,共55页。Java是严格区分数据类型的语言,要求在程序中使用任何变量之前必须声明其类型。数据类型说明了常量、变量或表达式的性质。只有数据类型相同的常量、变量才可以进行运算。二、数据类型
第十一页第十二页,共55页。Java的数据类型可分为:•基本类型,包括整型、浮点型、布尔型和字符型;•数组类型,包括一维数组和多维数组;•
复合类型,包括类和接口。
第十二页第十三页,共55页。表2给出了Java基本数据类型。Java定义了8种基本数据类型,利用基本数据类型可以构造出复杂数据结构来满足Java程序的各种需要。注意:
一般情况下,没有小数点的数字是int型数,带有小数点的数是double型的数,其他数值数据要在数字后面加一个大写或小写字母表示数据类型。例如4L是long型,3.14f是float型。
1、基本数据类型
第十三页第十四页,共55页。表2Java基本数据类型数据类型名称位长/b默认值取值范围布尔型boolean1falsetrue,false字节型byte80-128~127字符型char16′\u0000′′\u0000′~′\uffff′短整型short160-32768~32767整型int320-2147483648~2147483647长整型long640-9223372036854775808~9223372036854775807浮点型float320.0±1.4E-45或±3.4028235E+38双精度型double640.0±4.9E-324或±1.7976931348623157E+308第十四页第十五页,共55页。用final说明的一个标识符,在程序执行过程中是不可更改的,它们与变量的区别是不占用内存。Java约定常量标识符全部使用大写字母。常量定义格式:final类型
常量名[,常量名]=值,…;例如:finaldoublePI=3.1415926;finalintWEEK=7;2、常量
第十五页第十六页,共55页。变量在程序中为一个标识符,在内存中是一块空间,它提供了一个临时存放信息和数据的地方,具有记忆数据的功能。变量的值是可以改变的,它可以存放不同类型的数据,通常用小写字母或单词作为变量名。变量具有3个元素:
名字、类型和值。
3、变量
第十六页第十七页,共55页。1.变量的声明在Java中存储一个数据,必须将它保存到一个变量中。变量在使用前必须有定义,即有确定的类型和名称。声明变量的格式为:类型变量名[,变量名]=初值,…;变量声明告诉编译器以给定的数据类型和变量名创建一个变量;可以一次声明多个变量,并同时赋初值。例如:byteb1,b2;intv1=0,v2=10,v3=18;第十七页第十八页,共55页。例变量声明示例。使用SDK编译并运行该程序.publicclassV{publicstaticvoidmain(Stringargs[]){byteb=0x55;shorts=0x55ff;inti=1000000;longl=0xffffL;charc=′c′;floatf=0.23F;doubled=0.7E-3;booleanB=true;StringS=″Thisisastring″;
System.out.println(″字节型变量b=″+b);System.out.println(″短整型变量s=″+s);System.out.println(″整型变量i=″+i);第十八页第十九页,共55页。System.out.println(″长整型变量l=″+l);System.out.println(″字符型变量c=″+c);System.out.println(″浮点型变量f=″+f);System.out.println(″双精度变量d=″+d);System.out.println(″布尔型变量B=″+B);System.out.println(″字符串类对象S=″+S);}}图2第十九页第二十页,共55页。Java的运算符代表着特定的运算指令,程序运行时将对运算符连接的操作数进行相应的运算。运算符和操作数的组合构成表达式,表达式代表着一个确定的数值。按照连接操作数的多少来分:一元运算符二元运算符三元运算符三、运算符与表达式
第二十页第二十一页,共55页。按照运算符功能来分,运算符有7种:1、赋值运算符2、算术运算符3、关系运算符4、条件运算符5、逻辑运算符6、位运算符7、其他运算符三、运算符与表达式
第二十一页第二十二页,共55页。表6给出了赋值运算符和功能说明(未列出包含位运算符的赋值运算符)。表6赋值运算符
1、赋值运算符
运算符功能举例等价于=右边数赋给左边变量x=5,5赋给x
+=左右两边数相加,结果赋给左变量x=5,x+=10将15赋给xx=x+10-=左右两边数相减,结果赋给左变量x=5,x-=10将-5赋给xx=x-10*=左右两边数相乘,结果赋给左变量x=5,x*=10将50赋给xx=x*10/=右边数除左边数,结果赋给左变量x=5,x/=5将1赋给xx=x/5%=右边数除左边数,余数赋给左变量x=25,x%=7将4赋给xx=x%7第二十二页第二十三页,共55页。运算符功能举例说明-取负-x单目运算,将x取负值++加1i++单目运算,等价于i=i+1--减1i--单目运算,等价于i=i-1*乘5*3→15
/除5/3→1整数相除取商的整数部分%求余5%3→2两数相除取余数+加5+3→8
-减5-3→2
2、算术运算符第二十三页第二十四页,共55页。有一些运算符能产生布尔类型的结果,称它们为关系运算符,表8列出了这些运算符。表8关系运算符
3、关系运算符
运算符含义举例说明>大于′A′>′a′→falsea的编码值大于A的编码值<小于′A′<′a′→trueA的编码值小于a的编码值>=大于等于5>=3→true
<=小于等于5<=3→false
==等于5==3→false
!=不等于(3+3)!=5→true先计算3+3的值再比较第二十四页第二十五页,共55页。关系运算符用于两个操作数之间关系的比较。关系表达式的运算结果为布尔值,不是true就是false,操作数可以是常量、变量和表达式。关系表达式常常用作分支结构或循环结构的控制条件。注意:
Java的相等运算符“==”可能会给你带来麻烦,很多人在比较两个量时往往错用了等号“=”,以至于变成了赋值操作,编程中一定要注意比较两个量时用“==”。
第二十五页第二十六页,共55页。条件运算符有一个“?”和一个“:”,条件运算符与上面的运算符略有不同,是三元运算符,有3个操作数。条件表达式的格式为:条件表达式?结果1:结果2;条件运算符的计算过程为:首先计算作为条件的逻辑表达式或关系表达式,条件表达式返回值为true时整个表达式的值为结果1,返回值是false时整个表达式的值为结果2。条件表达式可取代简单的二分支结构,书写简单,并有较快的运算速度。4、条件运算符
第二十六页第二十七页,共55页。例如:inta=5,b=2,result;if(a>b)result=a-b;elseresult=b-a;其中的分支结构可改写为:result=a>b?a-b:b-a;第二十七页第二十八页,共55页。表9逻辑运算符
5、逻辑运算符
运算符含义举例说明!逻辑非!(3>=5)→true将表达式的值true变false,false变true&&逻辑与(3<5)&&(6>4)→true仅当两个表达式都为true时才为true||逻辑或(3>5)||(6<4)→false仅当两个表达式都为false时才为false^逻辑异或(3<5)^(6<4)→true仅当两个表达式值相异时才为true&布尔逻辑与同&&在表达式计算上与&&不同|布尔逻辑或同||在表达式计算上与||不同第二十八页第二十九页,共55页。例5下面的程序说明了关系运算符和逻辑运算符的使用方式,其输出结果如图2.4所示。publicclassRAL{publicstaticvoidmain(Stringargs[]){inta=25,b=3,e=3,f=0;booleand=a<b;System.out.println(″a=25,b=3,e=3,f=0″);System.out.println(″a<b=″+d);if(e!=0&&a/e>5)System.out.println(″a/e=″+a/e);if(f!=0&&a/f>5)System.out.println(″a/f=″+a/f);elseSystem.out.println(″f=″+f);}}第二十九页第三十页,共55页。图2.4第三十页第三十一页,共55页。以上是常见的分类运算符,在Java中还有一些特殊的运算符,如表10所示。表10其他运算符6、其他运算符
符号功能()表达式加括号则优先运算(参数表)方法的参数传递,多个参数时用逗号分隔(类型)强制类型转换.分量运算符,用于对象属性或方法的引用[]下标运算符,引用数组元素instanceof对象运算符,用于测试一个对象是否是一个指定类的实例new对象实例化运算符,实例化一个对象,即为对象分配内存+字符串合并运算符,如″Hello″+″World!″等于″HelloWorld!″第三十一页第三十二页,共55页。表11从高到低列出了运算符的优先级,同一行中的运算符优先级相同。
不论任何时候,当你一时无法确定某种计算的执行次序时,可以使用加括号的方法明确为编译器指定运算顺序,这也是提高程序可读性的一个重要方法。
7、运算优先级
第三十二页第三十三页,共55页。表11运算符的优先级
1.[]()expr++expr--2++expr--expr!~-3new(type)
4*/%
5+-
6<><=>=instanceof7==!=
8&
9^
10|
11&&
12||
13?:
14=opr=
第三十三页第三十四页,共55页。数组是有序数据的集合,数组中的每个元素具有相同的数组名,根据数组名和下标来惟一地确定数组中的元素。数组有一维数组和多维数组,使用时要先声明后创建。
四、数组第三十四页第三十五页,共55页。数组是Java语言中的特殊数据类型,它们保存着能通过下标索引来引用的一组同类数据。一维数组是指一个线性数据序列,声明格式为:数据类型数组名[];或数据类型[]数组名;例如:intarr1[];或者int[]arr1;char[]arr2;或者char[]arr2;Java在数组的定义中并不为数组元素分配内存,因此“[]”中不用指出数组中元素的个数即数组长度,而且对于如上定义的一个数组暂时还不能访问它的任何元素。
1、一维数组的声明
第三十五页第三十六页,共55页。定义数组后,还必须为数组分配内存、初始化。1.用运算符new分配内存再赋值格式如下:数组名=new数据类型[size]其中,size指明数组的长度。例如:intintArr[]=newint[3];charchArr[]=newchar[5];数组元素赋值的方法与变量相同,例如:intArr[0]=10;intArr[1]=20;intArr[2]=30;2、一维数组的创建与赋值
第三十六页第三十七页,共55页。2.直接赋初值并定义数组的大小第二种方法是直接赋初值并定义数组的大小。初值必须用大括号括起,用逗号作分隔符,初值的个数表示数组的大小。例如:inta[]={1,2,3,4,5,6,7,8,9,10};charc[]={′a′,′b′,′c′,′北′,′京′}第三十七页第三十八页,共55页。例6一维数组的使用。该程序对数组中的每个元素赋值,结果如图5所示。publicclassA1{publicstaticvoidmain(Stringargs[]){inta[]=newint[5];a[0]=1;a[1]=2;a[2]=3;a[3]=4;a[4]=5;System.out.println(″a[″+0+″]=″+a[0]);System.out.println(″a[″+1+″]=″+a[1]);System.out.println(″a[″+2+″]=″+a[2]);System.out.println(″a[″+3+″]=″+a[3]);System.out.println(″a[″+4+″]=″+a[4]);}}第三十八页第三十九页,共55页。图2.5第三十九页第四十页,共55页。1、顺序结构2、选择分支结构3、循环结构4、跳转语句
四、三种控制结构语句第四十页第四十一页,共55页。顺序执行的语句结构;publicclassA1{publicstaticvoidmain(Stringargs[]){inta;intb;a=2;b=1;System.out.println(″a=″+a);System.out.println(″b=″+b);}}1、顺序结构
第四十一页第四十二页,共55页。利用选择语句结构可以根据条件控制程序流程,改变程序执行的顺序。
if语句if(条件表达式)
s1语句;if…else语句if(条件表达式)
s1语句;elses2语句;2、选择分支结构
第四十二页第四十三页,共55页。例比较两个数的大小并按升序输出。classC1{publicstaticvoidmain(Stringargs[]){doubled1=23.4;doubled2=35.1;if(d2>=d1){System.out.println(d1);System.out.println(d2);}else{System.out.println(d2);System.out.println(d1);}}}2、选择分支结构
第四十三页第四十四页,共55页。switch语句
switch(表达式){
case常量1:语句1;
break;case常量2:语句2;
break;......default:
语句n;}2、选择分支结构
第四十四页第四十五页,共55页。循环可使程序根据一定的条件重复执行某一部分程序代码,直到满足终止循环条件为止。Java中提供的循环语句有:
(1)确定次数循环(for)(2)条件循环(while)(3)先执行后判定循环(do…while)。
3、循环结构
第四十五页第四十六页,共55页。(1)确定次数循环(for)for循环的语法格式为:for(表达式1;表达式2;表达式3)
{循环体}表达式1可以给出计数器的初值,是一个赋值语句;表达式2指出循环结束条件,是一个逻辑表达式;表达式3指出计数器每次的增量,是一个赋值语句。
3、循环结构
第四十六页第四十七页,共55页。(2)条件循环(while)while循环的语法格式为:while(条件表达式)
{循环体}3、循环结构
第四十七页第四十八页,共55页。(3)先执行后判定循环(do…while)do…while循环的语法格式为:do{
循环体}while(条件表达式);
3、循环结构
第四十八页第四十九页,共55页。跳转语句可以无条件改变程序的执行顺序。Java支持3种跳转语句:break、continue和return。break语句提供了一种方便的跳出循环的方法。使用break语句可以立即终止循环,跳出循环体,即使循环没有结束也如此。continue语句只能用在循环结构中,它跳过循环体中尚未执行的语句,重新开始下一轮循环,从循环体第一个语句开始执行。
4、跳转语句第四十九页第五十页,共55页。Co
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 部编本二年级上册语文第四至七单元(内容含课文口语交际及语文园地)全部教案
- 七年级下册古诗文预习《爱莲说》-2022-2023学年七年级语文古诗文寒假复习预习课
- 人教版新课标小学数学四年级下册教案
- 医疗行业专业劳务派遣方案
- 石油勘探设备校正操作规程
- 电力工程投标诚信承诺书模板
- 动漫节服装租赁合约
- 微生物学实验室安全操作规程
- 玩具制造企业干部管理办法
- 佣金政策制定高效模板
- 北师大版三年级数学上册第六单元《乘法》知识点梳理复习ppt
- 秘书五级总复习3 (收文发文+事务管理+自动化100)附答案
- 人教版英语九全 Unit 8 It must belong to Carla. Section A(3a-3c)教案
- 移植物抗宿主病课件
- 武装工作电子汇报(30张幻灯片)课件
- 公路改建工程咨询报告
- 热交换器原理与设计第2章-管壳式热交换器课件
- 水利部水利建设经济定额站
- 《过秦论》课文重点知识挖空练习+答案(校对版)
- 《丝网印刷技术》ppt课件
- 变频器说明书invt
评论
0/150
提交评论