Java程序设计基础第2章 Java语言基础_第1页
Java程序设计基础第2章 Java语言基础_第2页
Java程序设计基础第2章 Java语言基础_第3页
Java程序设计基础第2章 Java语言基础_第4页
Java程序设计基础第2章 Java语言基础_第5页
已阅读5页,还剩31页未读 继续免费阅读

下载本文档

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

文档简介

第2章Java语言基础Java程序设计基础贾宇波孙麒沈静徐春霞人民邮电出版社本章主要内容标识符与关键词数据类型变量与常变量运算符类型转换流程控制第2章Java语言基础Java的基本封装单元是“类”,其中可以定义方法。main()方法是Java应用程序执行的入口。代码块以左、右花括号({、})标记开始与结束,一条语句以分号;结束。这章开始我们将介绍更多Java语言的基础知识,包括标识符、关键词、数据类型、变量、运算符和语句。2.1标识符与关键词2.1标识符与关键词关键词关键词是指高级语言中定义过的词,有特殊的含义和专门用途程序员不能用它们作为变量名或函数名等使用abstractassertbooleanbreakbytecasecatchcharclassconstcontinuedefaultdodoubleelseenumextendsfinalfinallyfloatgotoifimplementsimportinstanceofintinterfacelongnativenewpackageprivateprotectedpublicreturnshortstaticstrictfpsuperswitchSynchronizedthisthrowthrowstransienttryvoidvolatilewhile2.2数据类型基础数据类型整数类型浮点类型字符类型布尔类型复合数据类型类接口2.2数据类型(整数类型)类型存储要求表示范围int4字节-2147483648

~

2147483647byte1字节-128

~

127short2字节-32768

~

32767long8字节-9223372036854775808

~

9223372036854775807在Java代码中出现的整数都是int类型若想表示long类型的整数需附设一个后缀L或l,如30L十六进制的数以前缀0x或0X开始八进制的数以前缀0开始2.2数据类型(浮点类型)类型存储要求表示范围float4字节+/-3.40282347E+38F(有效小数位数为6-7位)double8字节+/-1.79769313486231570E+308(有效小数位数为15)在Java代码中出现的浮点数都是double类型若需要表示float类型数需添加后缀F或f可以使用科学计数法表示浮点数,如12.3e22.2数据类型(字符类型)字符类型char是16位的,采用Unicode码字符类型的数是由一对单引号括起来的单个字符与字符串的区别

由一对双引号括起来的字符序列表示字符串

"a"表示含有一个字符"a"的字符串转义字符

一些字符有特殊的含义,因此无法直接使用它们。Java语言为这些特殊字符提供了转义序列"\\"

"\n"2.2数据类型(布尔类型)用于逻辑条件判断true和false不能与其他数据类型转换2.3变量与常变量

计算机内存中用于在程序运行时保存数值的存储单元称为“变量”变量中的数值保持不变称为“常变量”变量名

通过变量名可以存取或修改相应存储单元中的数据2.3.1声明变量变量在使用前都必须声明,即指定变量的类型

typename

varName;如,int

score;int

numOfStudents,

averageScore;2.3.2赋值

声明一个变量后,必须通过赋值语句对它进行初始化varName

=

value;如,averageScore

=

60;int

averageScore

=

80;//声明语句和赋值语句也可结合起来2.3.3常变量常变量表示变量的值初始化后不再修改声明时类型名前添加关键字final常变量只能初始化一次,一般采用大写字母命名如,averageScore=60;或final

double

PI;//其他语句PI=3.14;2.4运算符算术运算符关系运算符逻辑运算符位运算符2.4.1算术运算符■+、-、*、/用于进行加、减、乘、除运算应用于所有内置的数值数据类型

除法运算符应用于两个整数时,结果是除法的商(称为整数除法);若其中一个操作数是浮点数,结果是一个浮点数(浮点除法)如,7/2的结果是3,而7.0/2.0的结果是3.5■

+可以用于加法运算,还可以进行字符串拼接2.4.1算术运算符■++、--用于增1、减1运算

放在操作数之前,Java会在表达式的其余部分使用操作数之前先对此操作数进行运算x

=

3;y=++x;

//执行后,x的值为4,y的值也为4放在操作数之后,Java会先将操作数的值用于表达式,然后进行运算应用于所有内置的数值数据类型x

=

3;y=x++;

//执行后,x的值为4,y的值为32.4.2关系运算符和逻辑运算符关系运算符■

==、!=、<、>、<=和>=运算符的结果是布尔值逻辑运算符&、|、^、&&、||和!优化的与、或运算符2.4.3位运算符用于整数的二进制位的操作(测试、设置或移&、|、^、>>、>>>、<<、~

运算符&可用于将指定位置为0,或判断哪些位为1、哪些位为0逻辑运算符运算符|可以用于将指定位置为1

>>是每右移1位会将value中的所有二进制位都向右移动一个位置,同时保持符号位不变

<<是每左移1位会将value中的所有二进制位向左移动一个位置,右端补02.4.4赋值运算符var

=

expression;//表示将表达式(expression)的值赋值给varJava语言还提供特殊的速记赋值运算符来简化某些赋值语句如,a+=b;

//相当于a=a+b;2.4.5条件运算符expression

?

true_result

:

false_result表达式expression必须返回boolean类型的结果,若结果为true,则条件运算符返回表达式true_result的值,否则返回表达式false_result的值2.4.6运算符优先级优先级运算符类型运算符优先级最高一目运算符[].()(方法调用)!~++--+-new()(强制类型转换)优先级较高算术运算符*

/

%

+

-位运算符<<

>>

>>>优先级较低关系运算符<

<=

>

>

==

!=逻辑运算符&

^

|

&&

||条件运算符?:优先级最低赋值运算符=op=(op表示二目算术运算符、位运算符)2.5类型转换

在使用算术运算符、赋值运算符时,如果两个操作数的类型不同时,在运算前会对操作数进行隐式类型转换

如果转换中有精度损失,则必须通过强制类型转换来完成如,double

x

=

4.24;int

val

=

(int)x;2.6流程控制选择语句(if,switch)循环语句(while,do-while和for)跳转语句(break,continue和return)2.6.1复合语句和块作用域复合语句就是用一对花括号括起来的若干简单语复合语句还决定了局部变量的作用域范围

局部变量的作用域是从它声明开始到它所在的嵌套结束为止public

static

void

main(String[]

args){int

a;……//其他语句{int

b;……//其他语句}//b的作用域到此为止}//a的作用域到此为止2.6.2

if语句if语句的完整形式如下:if

(

condition

)

statement1;else

statement2;当这个表达式的值为真时,执行语句statement1,否则执行语句statement2复合语句还决定了局部变量的作用域范围if语句还可以嵌套使用2.6.3

while语句和do-while语句while语句的完整形式如下:

while(condition)statements先计算condition的值,若为false,不执行循环体,直接执行while语句后的语句;若为true,则执行循环体,再执行循环条件condition,若为true再次执行循环体,如此重复,直至condition的值为false2.6.3

while语句和do-while语句do-while语句的完整形式如下:dostatementswhile(condition);先执行循环体,再计算循环条件,若循环条件的值为true,继续循环体,如此反复,若值为false,跳出循环,执行do-while之后的语句2.6.4

for语句for语句的完整形式如下:for(initialization;

condition;

step)statements先初始化(initialization),然后进行循环条件的测试,若循环条件结果为true,执行循环体,接着执行步进(step),再次测试循环条件,如此重复,直到循环条件为false为止,结束循环,执行for语句之后的下一行程序2.6.4

for语句

在for语句的基本形式中,初始条件、循环条件或步长三者皆可为空,但分号不可省略如,for(

;

i

<=

100;){sum

+=

i;i++;}for(int

i

=

1;

i

<

100;

sum

+=

i,

i++);2.6.5循环嵌套

三种循环语句之间或与条件语句之间都可互相嵌套使用2.6.6

break和continue

break用于跳出当前的循环体,执行循环语句之后的程序continue用于终止当次循环,强制执行下次循环带标签的break和continue带标签的break用于跳出多层嵌套循环

带标签的continue用于结束相应循环中之后的语句,跳到这个循环下一次开始的位置2.6.7

switch语句switch语句用于多路分支的情况switch(expression){case

contant1:statements1break;case

contant2:statements2break;…default:statements}2.6.7

switch语句switch语句的执行流程计算表达式expression的结果,将其逐个与case常量比较,找到匹配项后,执行该匹配的相关语句,直到遇到break语句为止或到达switch末尾,接着执行switch之后的下一条语句。若没有匹配的case常量,则执行default语句序列。default语句是可选的若没有default,那么当所有case常量匹配失败后,不做任何动作。expression的值可以是char、byte、short或int类型小结Java提供了4类基础数据类型:整数类型(int、byte、short、long)、浮点类型(float、double)、字符类型(char)、布尔类型(boolean)。变量必须先声明、赋值才能使用。局部变量的作用域是它所在的代码块。常变量用final修饰,常变量只可初始化一次。Java语言提供了4类运算符:算术运算符、关系运算符、逻辑运算符、位运算符,使用时需注意它们的优先级。当算术运算符和赋值运算符的操作数类型不一致时,会进行隐式类型转换。程序控制语句有3类:选择

温馨提示

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

评论

0/150

提交评论