已阅读5页,还剩52页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言程序设计,清华大学出版社,第2章 Java基础,本章内容提要,1、基本数据类型 2、表达式和运算符 3、程序控制语句 4、数组 5、向量(简介) 6、字符串,2.1 基本数据类型,程序=算法+数据结构+程序设计方法+语言工具和环境。 之所以有数据类型,就是因为计算机存储不同数据类型的方式和空间不同。,数据类型的分类,基本数据类型分类,Java定义了8个基本数据类型:字节型,短整型,整型,长整型,字符型,浮点型,双精度型,布尔型。 它们分为4组: 整数型(byte,short,int,long) 浮点数型(float,double) 字符型(char) 布尔型(boolean),2.1.1 整数类型,【例2-1】计算二个整数的和,class Example2_1 public static void main(String args) int x,y,sum ; /变量声明 x = 3 ; y = 5 ; sum =x+y ; /求和 System.out.println(“二数之和为:“ + sum) ; 在Java中,使用变量要遵守“先声明后使用”的原则。,类型转换,基本数据类型按精度从“低”到“高”的顺序为: byte short int long float double,自动转换 需要满足两个条件: 1、类型相容; 2、目标数据类型比原数据类型分配的内存空间大(即由低到高)。,强制转换 发生在相容数据类型之间(即精度由高到低) 。 语法形式:(目标类型)值,2.2 表达式和运算符,表达式是由运算符、操作数和方法调用按照语言的语法构造而成的符号序列。表达式可用于计算一个公式,为变量赋值以及帮助控制程序执行流程。,2.2.1 表达式与运算符,只有一个运算对象的运算符称为一元运算符。例如+x是一个一元运算符,它是对运算对象x自增加1。 +x,-x: 使用x之前,先使x的值加1(或减1) x+,x-: 使用x之后,再使x的值加1(或减1) 设x=5 则y=+x y的值为6 y=x+ y的值为5,而x为6,运算符分类,算术运算符 关系和条件运算符 移位和逻辑运算符 赋值运算符 其他的运算符,2.2.2 算术运算符,Java 语言支持所有的浮点型和整型数进行各种算术运算。这些运算符为+(加)、-(减)、*(乘)、/(除)以及%(取模)。 算术运算符的使用基本上与加减乘除一样,也是先乘除后加减,必要时加上括号表示运算的先后顺序。例如这个程序代码会在命令行模式下显示: System.out.println(1 + 2 * 3);,2.2.3 关系与逻辑运算符,条件运算符,2.2.4 位运算符,位运算符是对操作数以二进制位为单位进行的操作和运算,其结果均为整型量。,移位和逻辑运算符,位运算符 示例,语句分为五类: 1、方法调用语句; 2、表达式语句; 3、复合语句; 4、控制语句; 5、package和import语句。,2.3 程序控制语句,通常语句在程序中都是按先后顺序执行,控制语句用于改变程序执行的顺序。 Java的控制语句有: if-else语句 switch语句 while do-while语句 for语句 跳转语句 异常处理语句,2.3.2 控制语句,1、if 语句的一般形式 if(表达式) 语句块 ,2.3.3 if条件语句,if语句例子,if(表达式) 语句块1 else 语句块2 ,if-else语句,if-else语句 例子,if-else if-else语句,if(表达式1) 语句块1 else if(表达式2) 语句块2 else 语句块3 ,if语句的嵌套,if(表达式1) 语句块1 else 语句块2 ,if(表达式2) 语句块3 else 语句块4 ,2.3.4 switch语句,switch语句是一个多分支选择语句,也叫开关语句。它可以根据一个整型表达式有条件地选择一个语句执行。 switch(变量名称或表达式) case 符合数字或字符: 语句块1; break; case 符合数字或字符: 语句块2; break; default: 语句块3; ,switch语句首先计算条件表达式的值,如果表达式的值和某个case后面的常量数值相同,就执行该case里的若干条语句,直到break语句为止。若没有一个常量与表达式的值相同,则执行default后面的若干条语句。default是可有可无的,如果它不存在,并且所有的常量数值都和表达式的值不相同,那么switch语句就不进行任何处理。,2.3.5 循环语句,while语句 do-while语句 for语句,while语句,while语句的语法结构: while(条件表达式) 循环体 ,do-while语句,do-while语句的语法结构: do 循环体 while(条件表达式);,for语句的语法结构: for(初始条件;终止条件;增量) 循环体 ,for语句,图2.7 for语句的执行过程,break语句 continue语句 return语句,跳转语句,跳出switch语句 跳出循环语句 跳出标号所示的语句块,break语句,终止本次循环,continue语句,退出当前方法,返回到调用方法语句的下一条语句。,return语句,数组是一组相同类型变量的集合,可以使用共同的名字引用它。,2.4 数组,1、声明数组 (1)声明一维数组的格式: 数组元素的类型 数组的名字; (2)声明二维数组的格式: 数组元素的类型 数组的名字;,2.4.1 创建和使用数组,一般来说,当创建数组的时候,使用 new 操作符,后面跟着数组元素的数据结构。然后将元素的数目用方括号括起来,其格式如下所示: 数组名字 = new 数组元素的类型数组元素的个数 ; 例: a = new int10;,2、 创建数组,数组可以通过下标访问自己的元素: int a =new int10; for(int i=0;ia.length;i+) ai=i; System.out.print(ai+“); ,3、数组元素的使用,为了获得数组的大小,可以使用下面的代码: 数组名.length; 注意,不能在length后面加一个圆括号( ),否则造成错误,因为length不是一个方法。,4、确定数组的大小,在Java中,多维数组(multidimensional arrays)是由若干行和若干列组成数组。在人们工作生活与学习中,要使用二维表格、矩阵、行列式等,都可以表示成多维数组。例如: int D = new int34;,2.4.2 多维数组的应用,该语句声明并创建了一个3行4列的数组D。这个数组在逻辑上可以表示成一个int类型的矩阵。 也就是说,这个数组在逻辑上可以表示为: D00 D01 D02 D03 D10 D11 D12 D13 D20 D21 D22 D23,1、向量(Vector) 向量(Vector)是Java.util包(java.util包是专门保存各种常用工具类的类库)提供的一个工具类。它有类似数组的顺序存储的数据结构,但是具有比数组更强大的功能。,2.5 向量,Vector类有三个构造函数: (1) Vector(): 构造一个空向量。 (2) Vector(int i): 用指定的初始化容量构造一个空向量。 (3) Vector(int i, int j): 用指定的初始化容量i和容量增量j构造一个空向量。 下面的语句就利用构造函数创建了一个向量序列: Vector v1 = new Vector(100,10);,2、创建向量对象,向量的常用方法,添加、插入向量 示例,1、字符串声明与创建 下面是声明并创建字符串的语句: String str ; str = “this is a Stirng. “; 也可以将上面二条语句合并为一条语句: String str = “this is a String. “;,2.6 字符串的简单介绍,2、字符串操作,例: String str1 = “Hello! “; String str2 = “你身体好吗?“; System.out.println(str1.length(); System.out.println(str2.length();,(1)求字符串的长度,String类中有三个方法可以比较两个字符串是否相同。 public int compareTo(String str); public boolean equals(Object obj); public boolean equalsIgnoreCase(String str);,(2)比较两个字符串,这里需要特别说明,比较二个数值x、y是否相等,我们使用x=y。而比较二个字符串相等则不能使用“=”来比较。请看下面的程序段:,字符串str转换为整型: int x=Integer.paresInt(str); 字符串str转换为float型: float n=Integer.paresFloat(str); 例如: String str = String.valueOf(123.4);,(3)字符串与数值的转换,要将一个字符串转化为字节数组,可用下列方法: byte d=字符串对象.getBytes(); 反之,要将一个字节数组转化为字符串,则用字符串的构造方法就能达到目的。 String(byte, int offset, int length),(4)字符串与字节数组的转化,有时我们需要将字符串分解成可被独立使用的单词,这些单词叫做语言符号。 当我们分析一个字符串并将字符串分解成可被独立使用的单词时,可以使用java.util包中的StringTokenizer类。StringTokenizer对象被称为字符分析器。 其构造方法为: StringTokenizer(String str, String delim) 将指定字符串str按字符delim为分隔符进行分解。,3、使用StringTokenizer字符分析器,StringTokenizer类的常用方法: hasMoreTokens():检测字符串中是否还有语言符号,若有语言符号就返回true,否则返回false。 nextToken():逐个获取字符串中的语言符号。 countTokens():计算调用了nextToken()方法的次数,用于统
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 环卫工程合同签订流程规范
- 火车空调设备窗维修合同
- 广告机维修合同范例
- 会计跟客户合同范例
- 推广照拍摄合同范例
- 承接隔墙工程合同模板
- 企业 宣传 合同范例
- 品牌授权店合同范例
- 动迁房买房合同范例
- 农行个人贷款合同范例
- 居间战略合作协议书范本
- 2024至2030年中国消防行业市场发展规模及投资机会分析报告
- 商铺出售回购协议书范本
- 新课标视角下初中数学阅读教学现状调查与分析
- 高中体育人教版课程教学分析
- 2024年电工(初级)考试题库附答案
- 2024新苏教版一年级数学册第三单元第1课《图形的初步认识》课件
- 中国医药公开招聘公司总监等高级管理岗位(高频重点提升专题训练)共500题附带答案详解
- 《文化研究导论》全套教学课件
- 苏教版五年级上册数学计算题大全1000道带答案
- 民宿经济效益和社会效益分析报告
评论
0/150
提交评论