




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言程序设计基础点击此处结束Java语言程序的基本构成要素数据类型运算符常用Java数值计算方法表达式包装类输入输出初步流程控制数组和字符串3.1
Java语言程序的基本构成要素点击此处结束3.1.1
标识符程序中使用的各种数据对象,如符号常量、变量、方法和类等,都需要一定的名称,这种
名称叫做标识符(Identifier)。Java的标识符由字母、数字、下划线(_)或美元符($)组成,但必须以字母、下划线或美元符开始。
Java标识符是大小写敏感的,也就是要严格地
区分大小写,否则会出错。这点是初学者学习
Java语言时要特别注意的。另外,Java标识符
没有字符数的限制。Java要求表示类、接口名的标识符用大写字母开头,表示变量、方法名的标识符用小写字母开头,表示常量名的标识符中全部使用大写的字母。点击此处结束3.1.2保留字保留字(Reserved
Word)又称为关键字,是Java语言本身使用的标识符,它有其特定的语法含义。所有的Java保留字将不能被用做标识符,如for、while、boolean等都是Java语言的保留字。点击此处结束abstractbooleanbreakbytecasecatchcharclassconst*continuedefaultdodoubleelseextendsfalsefinalfinallyfloatforgoto*Ifimplementsimportinstanceofintinterfacelongnativenewnullpackageprivateprotectedpublicreturn点击此处结束表3-1Java保留字表abstractbooleanbreakbytecasecatchshortstaticstrictpsuperswitchsynchronizedthisthrowthrowstransient*truetryvoidvolatilewhile点击此处结束续表注:加*号的保留字是Java目前还未用的3.1.3分隔符分隔符用来分隔开Java程序中的基本语法元素,可分为注释、空白符和普通分隔符3种。点击此处结束1.注释点击此处结束在程序中加适当的注释可提高程序的可读性。注释有如下3种形式。行注释符
“∥注释内容”多行注释符
“/*注释内容*/”Java文档注释符“/**注释内容*/”2.空白符空白符包括空格符、回车符、换行符和制表符等。在使用中,多个空白符与一个空白符的作用相同。点击此处结束3.普通分隔符点击此处结束普通分隔符具有确定的语法含义,要按照语法规定去使用。有如下4种分隔符。①大括号({})②分号(;)③逗号(,)④冒号(:)3.2
数据类型点击此处结束计算机程序处理的对象是各种数据,数据类型是指数据的内在表现形式。根据
现实世界数据的不同形式,数据就划分为
多种不同的类型。数据类型不同,能进行
的运算不同,取值范围也不同,在计算机
语言中还反映为数据的存储形式不同。
Java的每种数据类型占用固定的内存长度,与软硬件平台无关;每种数据类型均有一
个缺省的数值。基本类型数值类型整型(byte、short、int、long)实型(float
double)字符型(char)布尔型(boolean)复合类型数组类(class)接口(interface)点击此处结束表3-2Java语言的数据类型3.2.1常量与变量点击此处结束程序中所处理的数据表现为两种形式:常量和变量。1.常量常量是在程序执行中不能变化的量。
常量区分为不同的类型,如整型常量123,实型常量4.56,字符常量"a",布尔常量true和false以及字符串常量“Javaprogramming”。2.变量点击此处结束为了在Java中存储一个数据,必须申请存储空间变量就是这个存储空间的名字,在变量中可根据需要存入不同的数据。尤其要指出的是,Java是属于强类型的编程语言,这意味着对每一个变量都必须作类型声明。变量具有名称、类型、值和作用域等特性,在使用一个变量前必须先定义。变量定义是用标识符为变量命名,确定其数据类型,还可以根据需要为它赋初值(变量初始化)。定义了变量即为变量指定了存储方式。若是基本类型的变量,因为它们的存储长度是固定的,如何分配存储单元就确定了。若是复合类型的变量,定义后还需要用new运算符为用户数据分配存储单元,复合类型变量中存储用户数据存储单元的引用(指针)。3.2.2基本类型点击此处结束整型常量Java的整型常量有3种形式:十进制、十六进制和八进制。整型变量整型变量按所占内存大小的不同有
byte、short、int、long4种。Java的整数都是有符号数。类型所占字节默认值值范围byteshortintlong12480000L−128~127−32768~32767−2147483648~2147483647−9223372036854775808~9223372036854775807点击此处结束表3-3整型数据类型3.实型常量Java的实型常量有标准和科学计数法两种表现形式。点击此处结束①标准形式。②科学计数法形式。4.实型变量点击此处结束类型所占字节默认值值范围floatdouble480.0f0.0d1.40129846432481707E-45~3.0282346638528864E384.94065645841246544E-324~l.7976931348623157E308表3-4实型数据类型5.字符型数据字符型char数据是由一对单引号括起来的单个字符。点击此处结束转义字符点击此处结束\ddd描
述l到3位8进制数据所表示的字符(ddd)\uxxxxl到4位16进制数所表示的字符(xxxx)\"单引号字符(\u0027)\"双引号字符(\u0022)\\反斜杠字符(\u005C)\r回车(\u000D)\n换行(\u000A)\f走纸换页(\u000C)\t横向跳格(\n0009)\b退格(\u0008)表3-5转义字符表6.布尔型数据点击此处结束布尔boolean类型是最简单的一种数据类型,布尔数据只有两个值:true和false,且都是保留字,分别表示“真”和“假”两种状态。关系运算和逻辑运算返回布尔类型的值。布尔型是一个独立的类型,它不像C语言中的布尔型代表0和1两个整数,由于这个原因,Java中的布尔类型不能转换成数字。7.字符串数据字符串常量是用双引号括起来的零个或多个字符(包括转义字符)。点击此处结束3.3
运
算
符点击此处结束运算符的作用是与一定的运算数据组成表达式来完成相应的运算。对不同的数据类型,有着不同的运算符。对运算符,有运算对象(操作数)个数及类型、运算优先级、结合性等特性。Java语言对运算符的优先级、结合性和求值顺序有明确的规定,从根本上消除了运算符运算过程的二义性以及结果不统一的弊端。运算符的优先级是指不同运算符在运算中执行的先后顺序。在Java语言中共有
17种优先级,每个运算符分属确定的一个优先级别。Java语言严格按照运算符的优先级由高到低地顺序执行各种运算。运算符的结合性确定同级运算符的运算顺序。左结合性规定,运算数据先与左边的运算符结合,然后与右边的运算符结合。右结合性正好相反。点击此处结束3.3.1算术运算符点击此处结束算术运算符按操作数的多少可分为一元(或称单目)和二元(或称双目)两类,一元运算符一次对一个操作数进行操作,
二元运算符一次对两个操作数进行操作。
算术运算符的操作数类型是数值类型。1.一元算术运算符运算符实际操作例
子功
能+–++–正值负号加1减1+x−xx++,++xx
−,
−x对x取负将x的值加1后再放回变量x将x的值减1后再放回变量x点击此处结束表3-6一元算术运算符2.二元算术运算符算术运算符的第二种类型是二元运算符,这种运算符并不改变操作数的值,而是返回一个必须赋给变量的值。表3-7列出了二元算术运算符。二元算术运算符具有左结合性。点击此处结束运算符实际操作例
子功
能+–*/%加运算减运算乘运算除运算取模运算a+ba−ba*ba/ba%b求a与b相加的和求a与b相减的差求a与b相乘的积求a除以b的商
求a除以b的余数点击此处结束表3-7二元算术运算符这些都是常用的运算,对二元算术运算符,有以下两点要注意。①两个整数运算的结果是整数,5/2结果是2而不是2.5。②取模运算是求两个数相除的余数,如17%3的结果是2。可以对实数求余数。
实数a%b的结果为a−(int)(a/b)*b,余数的符号与被除数a相同。如123.4%10的结果为
3.4。点击此处结束3.3.2关系运算符点击此处结束关系运算符用于确定一个数据与另一个数据之间的关系,即进行关系运算。所谓关系运算是比较运算,将两个值进行比较。关系运算的结果值为true或false(布尔型)。表3-8列出了Java语言提供的6种关系运算符,它们都是双目运算符。在这里要指出的是,等于运算符==不要与赋值运算符=混淆,以至于关系运算变成了赋值运算。运算符实际操作例
子<小于a<b>大于a>b<=小于或等于a<=b>=大于或等于a>=b==等于a==b!=不等于a!=b点击此处结束表3-8关系运算符3.3.3逻辑运算符点击此处结束逻辑运算符可以对布尔类型的数据(布尔常量、布尔变量、关系表达式和逻辑表达式等)进行运算,结果也为布尔类型。表3-9列出了Java语言的逻辑运算符,逻辑运算规则如表3-10所示。运算符名
称例
子功
能!非!a对布尔数据a取非&非简洁与a&b对布尔数据a和b进行非简洁与运算|非简洁或a|b对布尔数据a和b进行非简洁或运算^异或a^b对布尔数据a和b进行异或运算&&简洁与a&&b对布尔数据a和b进行简洁与运算||简洁或a||b对布尔数据a和b进行简洁或运算点击此处结束表3-9布尔运算符ab!aa&&ba&ba||ba|ba^bfalsefalsetruefalseflsefalsefalsetruetruefalsetruetruetruefalsefalsefalsetruetruetruetruefalsetruetruefalse点击此处结束表3-10逻辑运算真值表3.3.4位运算符位运算符用来对二进制位进行运算,运算操作数应是整数类型,结果也是整数类型。表3-11列出了Java的位运算符。点击此处结束运算符实际操作例
子功
能~按位取反~a对a按二进制每位取反&|^<<>>>>>与运算
或运算
异或运算左移算术右移逻辑右移a&ba|ha^ba<<ba>>ba>>>b对a和b按二进制位每位进行与运算
对a和b按二进制位每位进行或运算
对a和b按二进制位每位进行异或运算对a左移b位,低位用0填充对a右移b位,高位用原高位重复对a右移b位,高位用0填充点击此处结束表3-11位运算符列表ab~aa&ba|ba^b001000011011100011110110点击此处结束表3-12位运算真值表3.3.5赋值运算符点击此处结束赋值运算符都是二元运算符,具有右结合性。简单赋值运算符(=)复合赋值运算符①复合赋值运算符的右边是一个整体。②表3-13中的等价是有条件的,即op1仅计算1次。运算符用
法等价于+=op1+=op2op1=op1+op2-=op1−=op2op1=op1−op2*=op1*=op2op1=op1*op2/=op1/=op2op1=op1/op2%=op1%=op2op1=op1%op2&=op1&=op2op1=op1&op2│=op1│=op2op1=op1│op2^=op1^=op2op1=op1^op2<<=op1<<=op2op1=op1<<op2>>=op1>>=op2op1=op1>>op2>>>=op1>>>=op2op1=op1>>>op2点击此处结束表3-13复合赋位运算符3.3.6条件运算符点击此处结束条件运算符是一种三元运算符,它的格式如下:Operand?
Expression1:Expression2在这个式子中,先计算Operand的真假,若为真,则计算并返回Expression1,若为假,则计算并返回Expression2。例如;(a>b)?a:b;这个表达式将返回a和b中较大的那个数值。3.3.7字符串运算符点击此处结束运算符“+”可以实现两个或多个字符串的连接,也可实现字符串与其他类对象的连接,在连接时,其他类对象会被转换成字符串。另外,运算符“+=”把两个字符串连接的结果放进第一个字符串里。在前面的例子里,当想把几项输出内容输出在同一行里时使用的就是“+”运算符。3.4 常用Java数值计算方法在Java的类Math中包含了一些数值常量,如E和PI,以及一些基本的数值计算
方法,如指数、对数、平方根和三角函数
等,为用户程序进行数值计算带来了方便。表3-14列出了一些常用的数值计算方法。点击此处结束方
法功
能参数类型返回类型abs(a)求a的绝对值(l)(1)sin(a)求a(弧度)的正弦值doubledoublecos(a)求a(弧度)的余弦值doubledoubletan(a)求a(弧度)的正切值doubledoubleasin(a)求a的反正弦值doubledouble点击此处结束表3-14类Math中常用的数值计算方法方
法功
能参数类型返回类型acos(a)求a的反余弦值doubledoubleatan(a)求a的反正切值doubledoubleceil(a)求不小于a的最小整数doubledoublerint(a)求最接近a的整数doubledoubleexp(a)求e的a幂次doubledoublefloor(a)求不大于a的最大整数doubledoublepow(a,b)求a的b次方doubledoublerandom()产生0.0~1.0的伪随机数doubledoublesqrt(a)求a的平方根doubledoublelog(a)求a的自然对数doubledoublemax(a,b)求a,b中的大者(l)(1)min(a,b)求a,b中的小者(l)(1)点击此处结束续表3.5
表
达
式点击此处结束表达式是由操作数和运算符按一定的语法形式组成的符号序列。3.5.1类型转换在一个表达式中可能有不同类型的数据进行混合运算,这是允许的,但在运算时,Java将不同类型的数据转换成相同类型,再进行运算。1.自动类型转换点击此处结束类型1类型2转换后的类型byte或short
byte或short或intbyte或short或int或longbyte或short或int或long或floatcharintlongfloatdoubleintintlongfloatdoubleint表3-15不同类型数据之间的转换规则2.强制类型转换点击此处结束源类型目标类型byteshort,char,int,long,float,doubleshortint,long,float,doublecharint,long,float,doubleintlong,float,doublelongfloat,doublefloatdouble表3-16不会丢失信息的类型转换3.表达式求值中的自动类型提升点击此处结束Java语言对表达式求值的自动类型提升规则如下。①所有byte和short类型提升为int类型。②若一个操作数是long类型,则整个表达式提升为
long类型。③若一个操作数是float类型,则整个表达式提升为
float类型。④若有double类型,则表达式值为double类型。自动类型提升对数据的运算带来了方便,但也容易引起编译错误。3.5.2优先级点击此处结束优先次序运算符1234567–
[]
()++--!~
instanceofnew,(type)即强制类型转换*
/
%+
−<<
>>
>>><
>
<=
>=89101112131415==
!=&按位与和非简洁与^│按位或和非简洁或&&?:=
+=
−=
*=
/=
%=
^=&=
│=
<<=
>>=
>>>=点击此处结束表3-17运算符优先级3.6
包
装
类点击此处结束基本类型表3-18包装类基本类型基本类型与包装类包装类byteshortintlongcharByteShortIntegerLongCharacterfloatdoublebooleanvoidFloatDoubleBooleanVoid3.7
输入输出初步点击此处结束3.7.1
输出int
i=10,j=20;System.out.println("i="+i+",j="+j);//输出为i=10,jSystem.out.println(i+j);System.out.println("sum="+i+j);//输出为30//输出为sum=1020System.out.println("sum="+(i+j));//输出为sum=303.7.2
输入点击此处结束在Java中,未提供与System.out.print()应的输入方法,仅有一个System.in.read(),可用于从键盘输入整数值在0~255之间的int类型数据。若程序运行时需要从键盘输入其他类型
的数据,则需要使用Java提供的输入输出功能。不论从键盘输入何种类型的数据,Java从键盘
接收数据都是以字符串的形式进行,再根据实
际数据的需要进行类型转换。在Java中实现输入时要使用异常处理机制,这是Java特有的部分内容3.8
流程控制点击此处结束3.8.1语句和块1.语句在Java语言中,有下面几类语句:空语句、标识语句、声明语句、表达式语句、分支语句、循环语句、跳转语句、同步语
句和异常语句等。有两种基本的语句:表
达式语句和声明语句。(1)表达式语句①赋值表达式,包含赋值运算符=或复合赋值运算符之一。点击此处结束②
++或
−的前后缀形式。③方法调用(无论它是否有返回值)。④对象创建表达式,用new来创建一个对象的表达式。(2)声明语句2.块点击此处结束用一对花括号“{}”将零个或多个语句括起来,就构成一个块(也称复合语句)。在块中允许包含另一个块(块嵌套)。在
Java语言中,允许一个块出现在任何单一语句可以出现的地方。块体现了Java面向对象程序设计的封装概念,在一个块中声明的局部变量的作用域是该变量的声明开始点到最小的包含其声明的块结束。3.8.2
if-else分支语句点击此处结束用单个if语句实现单选、双选结构用多个if语句实现多选结构if语句并列if语句嵌套①在用if嵌套方法进行多分支程序设计时,将
if语句嵌套在else部分。②若需要在if-else语句的statement1部分嵌
if语句,则将内层的if语句用括号括起来,指明正确的if与else的配对组合。点击此处结束3.8.3
switch语句点击此处结束使用switch语句时,需要注意的是:①各个case后的常量值value应各不相同。②通常在每一种case情况后都应使用break语句,否则遇到第一个相等情况后,下面break前的所有语句都会被执行(包括default后面的语句,若有的话)。③各个分支的statement可以是一条或多条语句,不必用复合语句。④不同case后的语句statement相同时,可以合并多个
case子句。⑤switch语句在用表达式的值比较每一个case后的值
value时,是从前往后顺序进行的。若各个值value互不相同,则case子句的顺序可任意。3.8.4循环语句点击此处结束一个循环一般包括4个部分:①初始化部分,用来设置循环的一些初始条件,如累加器清零等;②循环体部分,重复执行的一段程序,可以是一条语句,也可以是一块语句;③循环条件变更部分,在本次循环结束,下一次循环开始前执行的语句。常用形式为一个计数器值的增减④终止部分,一般为布尔表达式,每一次循环都要对该表达式求值,以检查是否满足循环终止条件。1.while语句点击此处结束Java执行while循环语句时,可以分解为以下步骤:①计算表达式boolean-expression(循环条件);②检查boolean-expression的值,如果值为true,则执③,否则执行⑤;③执行给定语句statement,即执行即循环体,其中应该包含对循环条件有影响的语句,使得循环条件会发生相应变换;④转移到①执行;⑤循环结束。2.do-while语句点击此处结束do循环语句的执行过程:①执行给定语句statement,即执行即循环体,其中应该包含对循环条件有影响的语句,使得循环条件会发生相应变换;②计算表达式boolean-expression(循环条件);③检查boolean-expression的值,如果值为tr则执行①,否则执行④;④循环结束。3.for语句点击此处结束for语句执行步骤:①计算表达式expression1(只计算一次,默认时表示初始内容);②接着检查表达式expression2的值,如果值为true,向④执行,如果值为false,则转到⑤执行;③执行语句statement,即执行循环体部分,由于for语句有expression3,因此在循环体中不需要安排对循环条件有影响的语句;④执行expression3,转到②执行;⑤循环结束。①省略表达式expression1②在表达式expression1中包含变量定义等更多的内容③省略表达式expression3④在表达式expression3中包含更多内容⑤同时省略表达式expression1和表达式
expression3⑥同时省略所有表达式expression点击此处结束4.循环嵌套循环嵌套是指在某个循环语句的循环体中又包含另一个循环语句,也称多重循环。外面的循环语句称为“外层循环”,外层循环的循环体中的循环称为“内层循环”。点击此处结束3.8.5标号和其他流程控制语句点击此处结束标号标号是一个标识符,用于给某语句或程序块的首地址取一个名字。break语句
3.continue语句3.9
数组和字符串数组是可以通过下标定位的同类型数据的集合。它是程序设计过程中常用的数据结构。数组中的每个数据称为元素,相同数据类型的元素按照一定顺序线性排列就构成了数组。点击此处结束1.数组元素类型点击此处结束Java的引用类型可以是以下两种数组元素类型:数组元素可以是接口类型,它的值是空引用或任何实现了该接口的类型的实
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 中国万头养猪场项目创业计划书
- 中国建筑结构设计软件项目创业计划书
- 中国家禽饲养项目创业计划书
- 中国即时零售项目创业计划书
- 中国肉鸡加工项目创业计划书
- 中国可视会议系统项目创业计划书
- 中国计算机连接器项目创业计划书
- 中国5G专网专线项目创业计划书
- 2025买卖房产合同样本
- 沉井施工合同变更与调整协议
- 2025届河南省鹤壁市淇县第一中学高三下学期联合考试英语试题含解析
- 2025年中考语文作文押题预测课件
- 建办质202463号危险性较大的分部分项工程专项施工方案严重缺陷清单宣贯(雄安)
- 设备电气接线规范
- 胃管非计划拔管的原因分析及预防措施课件
- 2024-2025学年七年级下学期数学期中测试(浙江杭州市专用)(含答案)
- 射频基础知识
- 超星尔雅学习通《法律基础(西南政法大学)》2025章节测试答案
- T-CALC 006-2024 住院糖尿病足患者人文关怀护理规范
- 2025年高考作文备考之一个人物写遍所有作文:人物素材王兴兴
- Mission-Planner地面站操作手册
评论
0/150
提交评论