版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第二章Java基本程序设计,单击此处添加副标题,The Based Programming in Java,第二章Java基本程序设计,2.1 基本知识,2.2 基本数据类型,2.3 表达式,2.4 Java语句,2.1 基本知识,2.1.1字符集 Java 语言采用unicode字符集,含有65535个字符,所以字母包括下面几种: A-Z,a-z 汉字、日文片假名、平假名和朝鲜文,Unicode字符格式:udddd d是一位十六进制数,例:u03c0表示希腊字母“” u0030-u0039表示0-9,Unicode 的网页地址: http:/,2.1.2标识符,标识符由字母、下划线、美元符号
2、和数字组成,且第一个符号不能为数字。下列都是合法标识符: Hello、$1234、程序名、www_123 标识符中不能含有:+,和空格等符号 标识符可用作: 类名、变量名、方法名、数组名、文件名等,2.1.3关键字,关键字就是Java语言中已经被赋予特定意义的一些单词。常见有: abstract、class、public、try、catch、if、float、import、void等,2.1.4 常量,在Java中,利用关键字final声明常量.例: Final double CM_PER_INCH=2.54; 关键字final 表示这个变量只能被赋值一次 一但被赋值之后,就不能再改变了 习惯
3、上,常量名采用大写,2.1.5注释,Java有三种注释的方式: 1。/ 注释内容由/一直到此行结束,2。/*和*/定义一个注释块,3。/*开始,*/结束 这种注释方法可用来自动产生文档,2.1.5注释,/*这是一个Java的小例子*/ public class Hello/定义一个类 public static void main(String args) System.out.println(“你好!”);/输出 ,Remember?,Java中数据类型分为四种: 基本数据类型(primitive type) 数组类型(array type) 类(class type) 接口类型(inter
4、face type) 任何常量和变量都是上述四种数据类型之一。,2.2 基本数据类型,2.2 基本数据类型,Java是强类型语言(strongly typed language) Java一共有8种基本类型(primitive type): 4个整型 2个浮点 1 个char(表示Unicode编码的字符) 1 个boolean,2.2.1整数类型,常量: 十进制:123,6000 八进制:077,065 十六进制:0 x234,0 xab12 整形变量的定义分为四种:,int,byte,short,long,Int型,变量定义 int x; int tom_12,jafei,年令 定义同时可
5、赋值: int tom_12=100,jafei,年令20; 对于int型变量,内存分配为4个字节,占32位,取值范围-231 231-1,-2147483648-2147483647,Byte型,变量定义 byte w; byte x,y,z; 定义同时可赋值: byte x=12,y=24,z=36; 对于byte型变量,内存分配1个字节,占8位,取值范围-27 27-1,-128-127,Short型,变量定义 short h; short m,$12,_aort; 定义同时可赋值: short m=12,$12=20; 对于short型变量,内存分配2个字节,占16位,取值范围-215
6、 215-1,-32768-32767,Long型,变量定义 long 长型 long I,j,k; 定义同时可赋值: long 长型; 对于long型变量,内存分配8个字节,占64位,取值范围-263 263-1,-92233720368477808-92233720368477807,补充例1,public class IntTest public static void main (String argsp) byte b1=0 x12; byte b2=0 x123; short s1=0 x1234; short s2=0 x12345; int i1=0 x12345678; in
7、t i2=0 x123456789; int i3=0 x123456789L; 思考:编译时会出现怎样的结果?,补充例1说明,第一遍编译时,语句 int i2=0 x123456789; 提示“过大的整数”错误,把该语句加注释或删除后, 进行第二遍编译,对于语句 byte b2=0 x123; short s2=0 x12345; int i3=0 x123456789L; 都出现了错误提示“可能损失精度”。,2.2.2 浮点类型,Float型 常量:12.23f, 32.00F, 2e40f 变量的定义: float x; float x1,x2,x3; 定义时赋初值: float x1=
8、12.23f,x2=32.00f,x3; 对于float型变量,内存分配4个字节,占32位.,有效位6-7位,Double 型,常量:12.23d, 32.00D, 123.0,6e-120 变量定义: double d; double d1,d2,d3; 定义时可以赋初值: double d1=1223.f,d2=32.00d,d3; 内存分配8个字节,占64位,有效位15位,常量:true、false 变量的定义: boolean x; boolean x,y,tom; 定义同时可赋值: boolean x=true,tom=false;,2.2.3 逻辑型,2.2.4 字符类型,常量:a
9、、A 、8 、? 变量定义: char q; char c,type,cat; 定义同时可赋值: char c=a,type,cat;,补充例2,public class CharTest public static void main(String argsp) char ch1=A; char ch2=u0041; char ch3=0X41; char ch4=65; int x=A; System.out.println(ch1); System.out.println(ch2); System.out.println(ch3); System.out.println(ch4); Sy
10、stem.out.println(x); ,思考:字符常量的不同 表示方式。,(4)字符类型char与String,String 不是基本数据类型,而是一个类 字符在双引号(“”)内 “Hello,World!” 使用如下: String str1,str2; /声明两个String变量 String greeting=“Good Morning!n”; String errorMessage=“Record Not Found!”; /声明两个String变量并且初始化它们,2.2.5 默认初值 为了可靠性起见,Java会自动为没有给定初值的变量设置标准的初值,如下表:,类型转换,Excha
11、nge!,byte,short,int,long,char,float,double,类型转换,在上图中,6个白色箭头,表示无数据丢失的转换 3个红箭头,表示可能有精度损失的转换 例: Int n=123456789; Float f=n; 结果:f=1.23456792E8,造型(强转类型),大多数的数值转换是遵循优先级的关系自动完成的 而有些转换则是通过造型来完成的 语法:,(转换后类型),被转换的变量名,例:double x=9.987; int nx=(int) x; 转换后 nx=9 强转时,当心丢失数据,造型,若要把一个浮点数转换成与其最接近的数(即进行四舍五入)需使用Math.r
12、ound()方法 例:double x=9.987; int nx=(int)Math.round(x); 结果:nx=10,补充:封装类(Wrapper类),Wrapper类,通过将值传递给相应的构造器,可以构建Wrapper类对象 例如: int pInt=500; Integer wInt=new Integer(pInt); int p2=wIValue();,Wrapper类,当转换基本数据类型时Wrapper类很有用,因为可以使用很多Wrapper类方法(查API)。 例如: String str=“365”; int x=Integer.parseInt(str);
13、或 int x=Integer.valueOf(str).intValue();,枚举类型,有时变量的取值仅在一个有限的集合内 例如:人民币的面值只有:100,50,20,10,5,2,1元的,可以采用枚举型 enum Money 100,50,20,10,5,2,1; Money m=Money.50;,2.3 表达式,表达式是由变量、常量、对象、方法调用和操作符组成的式子。,例: a+b*c/2-max(x,y),表达式的值就是对它运算后所得的结果。,若 a=4,b=5,c=6,x=7,y=9,则上述表达式的结果为:,10,组成表达式的Java操作符有很多种,代表了多种的丰富的操作运算,包
14、括赋值运算、算术运算、关系运算等。,赋值运算符,赋值运算符对应了赋值运算,即赋予程序里的变量或对象一定的内容。简单的赋值运算是把一个表达式的值直接赋给一个变量或对象,使用的赋值运算符是“=”,其格式为: 变量或对象=表达式; 其中赋值号右边的表达式可以是常量、另一变量或对象以及方法的返回值。,简单例子,i=0; j=i; k=i+j*5; MyFirstString=MyDouble.toString(); MySecondString=MyFirstString;,算术运算符,关系运算符,布尔逻辑运算符,位运算符,条件运算符? :,条件运算符也称三目运算符,其格式为:,Expression
15、? statement1 : statement2;,它的作用是根据第一个运算符(放在?前面,必须为布尔类型数据)的真假值,来决定整个表达式的结果值是第二个运算量(放在?后面 :前面)或者是第三个运算量(放在:后面)。,Xy ?1:-1,条件运算符的结合顺序是由右向左,也就是说,当我们写 a?b:c?d:e?f:g 的时候,Java会将其解释为 (a?b:(c?d:(e?f:g)。,例:x=5; x0?1:x0?-1:0,其它运算符,分量运算符. 内存分配运算符new 方法调用运算符( ) 下标运算符 实例运算符instance of,运算符,优先级描述 运算符 结合性 1分隔符 () . ,
16、 ; 2 自增自减、逻辑非 + - ! 右到左 3 算术乘除 * / % 左到右 4 算术加减 + - 左到右 5移位 左到右 6大小关系运算 = 左到右 7相等关系运算 = != 左到右 8按位与运算 2.表达式语句 x=23; i+;,语句,3.复合语句:用把一些语句括起来就构成了一个语句 z=x+23; System.out.println(“Hello”); 4.控制语句 if 、do 、switch 5.packege语句和import语句,Java的控制语句,Java语言控制语句有3种: 条件语句 循环语句 转移语句,条件语句,Java有两种类型的条件语句 if switch,If
17、语句,if语句 一般形式: if(表达式) 语句序列1 else 语句序列2,例: y= -1 x0) y=1; else y=-1; System.out.println(“我在学习IF语句”); ,1 x0,if的扩充形式,if(表达式1) 语句1 else if(表达式2) 语句2 else if( 表达式n) 语句n else 语句n+1,switch语句,switch表达式) case 常量1: 语句序列1 break; case 常量2: 语句序列2 break; .,case 常量n: 语句序列n break; default: 语句序列n ,几点注意:,表达式值、常量i的值为整
18、形 常量i常量j 执行:先计算表达式值 若与常量i相同,则执行语句序列i 若都不相同,则执行语句序列n+1,例 .根 据 考 试 成 绩 的 等 级 打 印 出 百 分 制 分 数 段 。,public class GradeLevel public static void main( String args ) System.out.println(n* first situation *); char grade=C; /normal use,switch( grade ) case A : System.out.println(grade+ is 85100); break; case
19、B : System.out.println(grade+ is 7084); break; case C : System.out.println(grade+ is 6069); break; case D : System.out.println(grade+ is 60); break; default : System.out.println(input error); ,循环语句,分为三种: for while do-while,格式: for(表达式1;表达式2;表达式3) 若干语句 表达式1负责变量初始化 表达式2称为循环条件 表达式3用来改变循环条件 若干语句称为循环体 执行
20、如右:,for语句,例:1100之和,import java.applet.*; import java.awt.*; public class ForSum100 extends Applet public void paint(Graphics g) int sum=0; for(int i=1;i=100;i+) sum=sum+i; g.drawString(sum=+sum,10,20);,PerfectNum.java,while与do-while语句,while一般格式: while(表达式) 若干语句 do-while一般格式: do 语句序列 while(表达式),转移语句,
21、continue 作用:结束本次循环,开始下一次循环,例:求100个数中的正数的和,public class ForSum100 public static void main(String argv) int sum=0,a; for(int i=1;i=100;i+) System.in.read(a); if(a0) continue; sum=sum+i; System.out.println(sum=+sum);,break 作用:结束整个循环的执行,转到下一语句,public class ForSum100 public static void main(String argv) int sum=0,a; for(int i=1;i=100;i+) System.in
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 合同 仲裁诉讼条款
- 大班音乐绘本《月光长廊》课件
- 2024上海市非定期集装箱道路货物运输合同
- 三年级语文上册第一单元测试卷-基础知识与综合能力篇 含答案 部编版
- 2024家庭水电装修合同书
- 2024收银员聘用合同
- 2024标准销售代理合同格式
- 深圳大学《哲学经典与人生》2021-2022学年第一学期期末试卷
- 深圳大学《形体训练(流行舞蹈)》2022-2023学年第一学期期末试卷
- 合同样本-土建合同范本8篇
- 2023年人民法院电子音像出版社招聘笔试题库及答案解析
- 大学生心理健康优秀说课-比赛课件
- 收款账户变更的声明
- 九年级道德与法治中考复习资料
- 《化学发展简史》学习心得
- 班组建设与班组长管理技巧课件
- 签派员执照考试题库汇总-8签派和实践应用
- 销售人员十大军规课件
- 人类学研究方法课件
- 医学课件老年共病概述及处理策略
- 安全风险评价风险矩阵法L-S、LEC法
评论
0/150
提交评论