版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 Java语言程序设计,第二章:Java语言基础,第章标识符、关键字和数据类型,2.1 标识符和关键字 2.2 Java语言的数据类型 2.3 运算符与表达式 2.4 Java语言的语句,2.1 标识符和关键字,用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符。简单地说,标识符就是一个名字。 Java语言规定标识符由字母、下划线、美元符号和数字组成,并且第一个字符不能是数字字符。,合法的标识符: indentifier username user_name _userName $username,非法的标识符: class 98.3 Hello World,2.1
2、标识符和关键字,关键字就是Java语言中已经被赋予特定意义的专用单词。不可以把这类词作为名字来用。,注:java 无sizeof ,goto, const 关键字,但不能用goto const作为变量名,分隔符: 注释符:/ 注释一行 /* */一行或多行注释 /* */是java所特有的doc注释。 空白符:空格、回车、换行和制表符(Tab键)等符号 普通分隔符: . 句号,用于分隔包、类或分隔引用变量中的变量和方法; ;分号,是Java语句结束的标志; ,逗号,分隔方法的参数和变量说明等; :冒号,说明语句标号; 大括号,用来定义复合语句、方法体、类体及数组的初始化; 方括号,用来定义数组
3、类型,及引用数组的元素值; () 小括号,用于在方法定义和访问中将参数表括起来,或在表达式中定义运算的先后次序。,2.1 标识符和关键字,2.2 Java语言的数据类型,基本数据类型也称作简单数据类型。Java语言有8种简单数据类型,分别是: boolean、byte 、short、int、long、float、double、char。 这8种数据类型习惯上可分为4大类型: 逻辑类型:boolean 字符类型:char 整数类型:byte、short、int、long 浮点类型:float、double,2.2 Java语言的数据类型,2.2 Java语言的数据类型,1.变量,变量:变量是在程
4、序运行过程中其值可以变化的量,变量是Java程序中的基本存储单元。 变量的三要素:变量名,变量类型,变量作用域。 变量名:变量的名字,使用变量名来引用变量包含的数据。 变量类型:变量的数据类型,决定可以容纳什么样类型的数值, 以及可以对它进行什么的操作。 举例:int largestInteger ; float largestFloat ; 变量的作用域:变量的生存周期,由其所处的位置决定的。 成员变量作用域 局部变量作用域 方法参数作用域,2.常量,常量:是在程序运行过程中其值不变的量。 直接常量:各数据类型取值范围中的值。 字符串常量:字符串常量是用一对双引号括起来的字符序列。 Hell
5、o n world! A 声明常量的格式: final 类型 常量名,常量名=值; final int aFinalVar = 0;,(1).逻辑类型,常量:true ,false。 变量的定义 使用关键字boolean来定义逻辑变量,定义时也可以赋给初值: boolean x=true,tom=false,jiafei;,(2)int 型,常量 八进制(以0开头)、十进制、十六进制(以0 x开头)、 变量 使用关键字int来定义int型整型变量,定义时也可以赋给初值: int x= 12,tom=-1230,height=9898,number; 对于int型变量,内存分配给4个字节(byt
6、e), 一个字节由8位(bit)组成,4个字节占32位。 int型变量的取值范围是:-231231-1,(3)byte 型,使用关键字byte 来定义byte 型整型变量,可以一次定义几个,定义时也可以赋给初值: byte m=-12,deep=28,speed=98; 对于byte型变量,内存分配给1个字节,占8位,因此byte型变量的取值范围是: -2727-1。,(4)short 型,使用关键字short来定义short型整型变量,可以一次定义几个,定义时也可以赋给初值: short x=12,tom=1234,漂亮=9876,jiafei; 对于short型变量,内存分配给2个字节,占
7、16位,因此short型变量的取值范围是: -215 215-1。,(5)long型,常量 13L 3455678889L 变量 占用八个字节,数字大小为-263263-1 long a,b=2344L;,(6)Char型,常量Java使用unicode字符集,unicode表中的字符就是一个字符常量,字符常量需使用单引号扩起,例如:A、 b、 ? 、! 、9、 好 、t 、 ,对无法通过键盘输入的字符,可用转义符表示。ddd uxxxx r n f t b 变量使用关键字char来定义字符变量,可以一次定义几个,定义时也可以赋给初值: char x=A,tom=爽,jiafei; 对于cha
8、r型变量,内存分配给2个字节,占16位,最高位不用来表示符号 。,(7)float 型,常量 123.5439f,12389.987F,.123f,2e40f(2乘10的40次方,科学计数法),必有小点,E前是数字,E后是整数。 变量 使用关键字float来定义float型变量,可以一次定义几个,定义时也可以赋给初值: float x= 12.76f,tom=1234.987f; 对于float型变量,内存分配给4个字节,占32位 .,(8)double 型,常量 12389.5439d(d可以省略),12389908.987,123.0,6e-140(6乘10的-140次方,科学计数法) 变
9、量 使用关键字double来定义double型变量,可以一次定义几个,定义时也可以赋给初值: double x=12.76,tom=1234098.987; double型变量,内存分配给8个字节,占64位,(9)基本数据类型的转换,类型转换: 类型按精度从“低”到“高”排列了顺序。 byte-short-int-long-float-double char-int 级别低的赋给级别高的变量,系统自动完成数据类型的转换。 例如 int x=50; float y; y=x; 如果输出y的值,结果将是50.0。 级别高的值赋给级别低变量,必须使用显示类型转换运算。 例如: int x=(int)
10、23.89; long y=(long)34.98F; 强制转换运算可能导致精度的损失。,例子1,public class Example2_1 public static void main (String args ) int c=2200; long d=8000; float f; double g=123456789.123456789; c=(int)d; f=(float)g; /导致精度的损失. System.out.print(c= +c); System.out.println( d= +d); System.out.println(f= +f); System.out.p
11、rintln(g= +g); ,2.3 运算符与表达式,运算符和操作数的组合构成表达式,表达式代表着一个确定的数值。 运算符分成以下几类: 算术运算符 关系和条件运算符 移位和逻辑运算符 赋值运算符 其它的运算符,2.3 运算符-1,算术运算符 运算符 使用 描述 + op1 + op2 op1 加上op2 - op1 - op2 op1 减去op2 * op1 * op2 op1乘以op2 / op1 / op2 op1 除以op2 % op1 % op2 op1 除以op2的余数 + +op 如果op是一个byte、short或者char型 的,op变成int型 - -op 取op的相反数
12、 + op+ 自增1;它是在自增之前计算op的数值的。 + +op 自增1;它是在自增之后计算op的数值的。 - op- 自减1;它是在自减之前计算op的数值的。 - -op 自减1;它是在自减之后计算op的数值的。 注:/ 两个操作数是整数,是整除;% 符号取决于被除数,两个操作数可以是浮点型数。,2.3 运算符-2,关于前增量和后增量的说明: int i=2; int j=3; int m=+j+i; int k=m+i+ ;,2.3运算符-3,关系与条件运算符 运算符用法 在什么情况下返回true op1 op2 op1大于op2的时候 =op1 = op2 op1大于等于op2的时候
13、op1 op2 op1小于op2的时候 =op1 = op2 op1小于等于op2的时候 =op1 = op2 op1等于op2的时候 !=op1 != op2 op1不等于op2的时候,2.3运算符-4,逻辑运算符 运算符用法 在什么情况下返回true int c=3; int a=0; if (61) System.out.println(“Ok!); System.out.println(a=+a); System.out.println(b=+b); System.out.println(c=+c); ,2.3运算符-6,位运算符 运算符用法 在什么情况下返回true op1 op2
14、将op1右移op2个位 op1 op2 将op1右移op2个位(无符号的) B. long number = 0345; C. long number = 0345L; D. long number = 0 x345L. 1.下列哪个选项是Java语言合法的标识符? A.fieldnameB.superC.3numberD.#numbe 2.下列哪个选项可以正确用以表示十六进制值? A0 x18 B0 x1T C080 D0100 3.下列的哪个赋值语句是正确的? Achar a=1; Bint a=1.0; Cint a=1.0f; Dint a=(int)1.0; 4.以下运行符中属三元运
15、算符的是() A、+ B、% C、条件运算符 D、* 5.下列的哪个赋值语句是不正确的? Afloat f = 11.63;Bdouble d =3.8E2; Cfloat d =6.23 f ; Ddouble f=11.1E2f;,练习,2.4 Java语言的语句,2.4.1 语句概述,Java里的语句可分为以下五类: 1方法调用语句 2表达式语句 (赋值语句) 3复合语句 4控制语句 5package 语句和 import语句,2.4.2 控制语句,选择语句,if 和switch开关语句。 循环语句,for 、 while和dowhile break和 continue,一选择控制语句,
16、1、if (表达式) 语句; if (表达式) 语句1; else 语句2; if (表达式1) 语句1; else if (表达式2) 语句2; else if (表达式2) 语句3; else 语句n; If语句还可以嵌套使用 if (表达式1) if (表达式2) 语句1; else语句2; esle if (表达式2) 语句3; else语句4; 每个语句可以是使用 组成的复合语句。嵌套时最好使用确定层次界限,举例说明,2、switch 语句是多分支的开关语句,它的一般格式定义如下(其中break语句是可选的): switch(表达式) case 常量值1: 若干个语句 break;
17、case 常量值2: 若干个语句 break; . case 常量值n: 若干个语句 break; default: 若干语句 注: switch语句判断条件可接受int, byte, char, short型,不可以接受其他类型,一选择控制语句,public class TestSwitch public static void main(String args) int i = 8; switch(i) case 8 : case 3 : case 2 :System.out.println(C); break; case 9 :System.out.println(D); break;
18、default: System.out.println(error); ,二、循环语句,1for循环语句 for 语句是java程序设计中最有用的循环语句之一,for语句的格式如下: for(表达式1;表达式2;表达式3) 若干语句 例:for(int x=1;x10;x+) System.out.println(x=+x); ,2while 循环 一般格式: while(表达式) 若干语句 3do-while循环 一般格式: do 若干语句 while(表达式);,举例: public class TestWhile public static void main(String args)
19、int i = 0; while(i 10) System.out.println(i); i+; i = 0; do i+; System.out.println(i); while(i 10); ,三、 break和continue语句,1、 break语句 (1)在switch语句中,用来终止switch语句的执行,完成多分支择一。 (2)在循环内使用,跳出一层循环。如下例1。 (3)在Java中,可以为每个代码块加一个标号,一个代码块通常是用大括号括起来的一段代码。格式如下: Blocklabe1:codeblock break语句的第三种使用情况就是跳出它所指定的块,并从紧跟该块的第
20、一条语句处执行。其格式为: break Blocklabe1;如例2。,例1:class B public static void main(String args) boolean test=true; int i=0; while (test) i=i+2; System.out.println(i=+i); if (i=10) break; System.out.println( i为+i+时循环结束); ,例2: class B1 public static void main(String args) throws java.io.IOException char ch; lab1:
21、 / 此处为标号标识符 for (int i=0; i4; i+) for (int j=0; j4; j+) ch=(char)System.in.read(); System.in.skip(2); if (ch=b) break lab1; /跳出标号标识的块 if (ch=c) System.out.println(继续); System.out.println(结束两重循环); ,注意: 与C/C+不同,Java中没有用goto语句来实现任意的跳转,因其破坏程序的可读性。但java能实现goto语句所特有的一些功能,如果break后所指定的标号不是一个代码块的标号,而是一个语句,则这
22、时break完全实现goto的功能,不过要少用。,2、continue语句,(1)continue语句只能用在循环结构中,它跳过循环体中尚未执行的语句,重新开始下一次循环,从循环体第一个语句开始执行。(在for语句中,要先执行迭代语句。)它的格式为:continue; 例: class C2 public static void main(String args) for(int i=0;i10;i+) if(i%2=0) continue; System.out.println(i); ,(2)带标号的continue语句 Java也支持带标号的continue语句,它通常用在嵌套循环的内循环中,你可以用标号标出你想跳到哪一条语句继续重复执行程序。它的语法格式为: 标识符: . continue 标识符; 如果是for嵌套,跳到外
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 校园活动用电协议书
- 试驾活动试驾员激励政策
- 个体广告店租赁合同样本
- 物流行业合同履约规则
- 采购工作半年总结5篇
- 地下停车场土石方施工协议
- 制度评审与人力资源优化
- 环保企业法人聘用合同模板
- 名人专属保姆合同模板
- 精细化工公司应届生劳动合同
- 融资租赁并购重组中的法律合规与风险管理
- 医师执业、变更执业、多机构备案申请审核表
- 2025届全国高考分科模拟调研卷数 学(一)(含答案)
- 项目经理或管理招聘面试题及回答建议(某大型国企)
- 幼儿园 中班数学《会变的图形》
- 第六单元测试卷(单元卷)-2024-2025学年六年级上册语文统编版
- 2024年秋五年级上册 19 父爱之舟(公开课一等奖创新教案与教学反思)
- 某某IT技术支持及售后服务方案
- 2024年新人教版七年级上数学全册教案
- 用所给词的适当形式填空(专项训练)人教PEP版英语六年级上册
- 2024年中国远洋海运集团限公司招聘(高频重点提升专题训练)共500题附带答案详解
评论
0/150
提交评论