java第02章Java语言基础.ppt
Java2程序设计实用教程叶核亚程序设计实用教程叶核亚,第2章 Java语言基础,2.1 标识符与关键字 2.2 基本数据类型 2.3 变量与常量 2.4 运算符与表达式 2.5 流程控制 2.6 数组 2.7 字符串,Java2程序设计实用教程叶核亚,2.1 标识符与关键字,Java语言使用国际字符格式标准(Unicode)(而不是ASCII码)和浮点数(IEEE 754)。Unicode字符集定义了一整套国际标准字符集,用16位表示一个字符,包括65536个字符,比通常使用的8位的ASCII码字符集大得多。1.关键字 2.标识符 3.注释 4.分隔符,Java2程序设计实用教程叶核亚,1.关键字,关键字(keywords)是Java中具有特殊含义的字符序列。不允许用户对关键字赋予别的含义。Java定义了47个关键字。,Java2程序设计实用教程叶核亚,2.标识符,Java用标识符(identifier)表示变量名、类名和方法名。标识符是由字母、数字、下划线(_)、美元符($)组成的字符数字串。标识符必须以字母、下划线或美元符开头。Java约定在代码中变量名一般以小写字母开头,类名一般以大写字母开头。,Java2程序设计实用教程叶核亚,3.注释,Java允许在源程序文件中添加注释(comments),以增加程序的可读性,系统不会对注释的内容进行编译。Java有三种形式的注释:/单行注释(comment on one line)/*单行或多行注释(comment on one or more lines)*/*文件注释(documenting commment)*/,Java2程序设计实用教程叶核亚,4.分隔符,;(分号):语句(statement)结束符;,(逗号):分隔变量声明中连续的标识符,或在for语句中连接语句;.(句号):用于分隔包、子包和类,或分隔引用变量中的变量和方法;()(括号):用于在方法定义和访问中将参数表括起来,或在表达式中定义运算的先后次序,或在控制语句中将表达式和类型转换括起来;(方括号):用于声明数组类型,及引用数组的元素值;(花括号):用一对花括号将若干语句序列括起来作为一个程序代码块(block),或初始化数组时赋值。,Java2程序设计实用教程叶核亚,2.2 基本数据类型,整型:byte、short、int、long浮点型:float、double逻辑型:boolean字符型:char,Java2程序设计实用教程叶核亚,2.3 变量与常量,1.变量 2.常量,Java2程序设计实用教程叶核亚,1.变量,变量存储的是在程序中可以修改的值。变量具有三个基本要素:名字、类型和值。Java的每个变量都具有一种类型,变量的类型决定了变量的数据性质和范围、变量存储在内存中所占的大小(字节数)以及对变量可以进行的合法操作等。变量声明格式为:修饰符类型变量名=初值,变量名=初值例如,int i,j,k;/同时声明了三个int类型的变量i、j、kint i=0;/声明变量时初始化,Java2程序设计实用教程叶核亚,2.常量,常量存储的是在程序中不能被修改的固定值。常量也是有类型的,Java常量包括整数、浮点数、布尔值、字符和字符串。常量声明的形式与变量声明基本一样,只需用关键字final标识,通常final写在最前面。例如,final int MAX=10;final float PI=3.14f;,Java2程序设计实用教程叶核亚,2.4 运算符与表达式,2.4.1 赋值 2.4.2 运算符 2.4.3 表达式,Java2程序设计实用教程叶核亚,2.4.1 赋值,赋值运算的作用是使变量获得值。赋值的格式为:变量名=表达式其中“=”是赋值运算符,变量名获得计算出的表达式的值。赋值的运算次序是从右向左的,即先计算表达式的值,再将表达式的结果值赋给变量名。例如:int i,j;i=10;/变量i获得值i=i1;/变量i获得i原先值再加1,则i=11j=i10;/变量j获得表达式的值,则j=21,Java2程序设计实用教程叶核亚,2.4.2 运算符,算术运算符一元:正()、负()、加1()和减1()二元:加()、减()、乘(*)、除()、取余(%)。位运算符等于(=)、不等于(!=)、大于()、大于等于(=)、小于()、左移(),Java2程序设计实用教程叶核亚,表2.1 运算符的优先级,Java2程序设计实用教程叶核亚,2.4.3 表达式,表达式是算法语言的基本组成部分,它表示一种求值规则,通常由操作数、运算符和圆括号组成。表达式按照运算符的优先级进行计算,求得一个表达式的值。表达式的类型不一定和操作数相同,它取决于其中的运算。例如:(i+1)*2/结果为int(i=0)&(i=9)/结果为boolean“Abc”+”xyz”/结果为String,Java2程序设计实用教程叶核亚,例2.1 求一个三位数的数字和。,public class Digsum3 public static void main(String args)int n=123,a=0,b=0,c=0,digsum=0;a=n%10;/个位 b=(n%100)/10;/十位 c=n/100;/百位 digsum=a+b+c;System.out.println(Digsum(+n+)=+digsum);程序运行结果:Digsum(123)=6,Java2程序设计实用教程叶核亚,例2.3 判断一个年份是否为闰年,根据天文历法规定,每400年中有97个闰年。凡不能被100整除但能被4整除的年份,或能被400整除的年份是闰年,其余年份是平年。如1996、2000是闰年,而1900是平年。public class Leap_boolean public static void main(String args)int year=2002;boolean leap=false;leap=(year%400=0)|(year%100!=0)程序运行结果:2002 is a leap year,false,Java2程序设计实用教程叶核亚,2.5 流程控制,2.5.1 程序控制结构 2.5.2 分支语句 2.5.3 循环语句 2.5.4 转向语句,Java2程序设计实用教程叶核亚,2.5.1 程序控制结构,图2.1三种控制结构,Java2程序设计实用教程叶核亚,2.5.2 分支语句,1.if语句 2.switch语句,Java2程序设计实用教程叶核亚,1.if语句,if 语句的定义形式为:if(布尔表达式)语句1;else 语句2;例如下面的if语句比较a、b两个数的大小并输出较大的数。int a=1,b=2;if(ab)System.out.println(max=+a);else System.out.println(max=+b);,Java2程序设计实用教程叶核亚,2.switch语句,switch语句的定义形式为:switch(表达式)case常量1:语句1;break;case常量2:语句2;break;default:语句;,Java2程序设计实用教程叶核亚,2.5.3 循环语句,1.for语句 2.while语句 3.do-while语句 4.多重循环,Java2程序设计实用教程叶核亚,1.for语句,for语句的定义格式为:for(表达式1;表达式2;表达式3)语句;例2.3 求1到10的累加和。int i=1,n=10,s=0;for(i=1;i=n;i+)s=s+i;System.out.println(Sum=1+.+n+=+s);,Java2程序设计实用教程叶核亚,2.while语句,while语句的定义格式为:while(布尔表达式)语句;例如用while语句实现求1到10之和的语句如下:int i=1,n=10,s=0;while(i=n)s=s i;i;/循环结束后,i=11,s=55,Java2程序设计实用教程叶核亚,3.do-while语句,do-while循环语句的定义形式为:do 语句;while(布尔表达式);例如,用do-while语句实现求1到10之和的语句如下:int i=1,n=10,s=0;do s=s i;i;while(i=n);/循环结束后,i=11,s=55,Java2程序设计实用教程叶核亚,4.多重循环,如果循环语句的循环体内又有循环语句,则构成多重循环结构。常用的有二重循环及三重循环。输出九九乘法表如下。int i,j,n=9;for(i=1;i=n;i+)for(j=1;j=i;j+)System.out.print(+i*j);System.out.println();,Java2程序设计实用教程叶核亚,2.5.4 转向语句,break语句continue语句return语句,Java2程序设计实用教程叶核亚,2.6 数组,数组(array)是由数目固定、相同类型的元素组成的有序集合,每个元素相当于一个变量。数组是Java中的引用类型。数组的元素既可以是简单类型,也可以是引用类型。2.6.1 一维数组 2.6.2 二维数组 2.6.3 不规则的多维数组,Java2程序设计实用教程叶核亚,2.6 数组,声明一维数组变量格式:注意:此时数组并没有获得内存空间。使用new为数组分配空间只有用new为数组分配空间以后,数组才占用一片连续的存储单元。格式:=new 必须指出元素的类型和个数。一旦为数组分配了存储空间,程序中不能改变数组的长度,但可以再次用new为数组重新分配空间。,Java2程序设计实用教程叶核亚,2.6.1 一维数组,图2.6 一维数组存储结构,Java2程序设计实用教程叶核亚,例2.13求一组数中的最大与最小值,Java2程序设计实用教程叶核亚,2.6.2 二维数组,通常以说明多个下标的形式来定义多维数组。int mat=new int1010int mat23=1,2,3,4,5,6;,图2.7 二维数组存储结构,Java2程序设计实用教程叶核亚,2.6.3 不规则的多维数组,多次分配空间的方法常用在指定不规则的多维数组。如:int twoDim=new int 4;/指定第一维的维数twoDim 0=new int 1;/指定第二维的维数twoDim 1=new int 2;twoDim 2=new int 3;twoDim 3=new int 4;数组twoDim得到的存储单元如图2.11所示。,图2.11 不规则的二维数组,int twoDim=new int45;int twoDim=new int4;,Java2程序设计实用教程叶核亚,2.7 字符串,1.声明字符串变量 2.字符串运算 3.String类的常用方法,Java2程序设计实用教程叶核亚,1.声明字符串变量,图2.12 字符串变量,Java2程序设计实用教程叶核亚,2.字符串运算,程序中可以用赋值运算为字符串变量赋值,除此之外,Java定义“+”可用于两个字符串的连接运算。如:str=abc+xyz;/str的值为abcxyz。如果字符串与其他类型变量进行“+”运算,系统自动将其他类型转换为字符串。如:int i=10;String str=i=+i;/str的值为i=10。,Java2程序设计实用教程叶核亚,3.String类的常用方法,调用Java定义的方法。字符串变量.方法名,Java2程序设计实用教程叶核亚,表2.9 String类的常用方法,