




已阅读5页,还剩41页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Java语言程序设计 清华大学出版社 第2章 java基础 本章内容提要 1、基本数据类型 2、表达式和运算符 3、程序控制语句 4、数组 5、向量(简介) 6、字符串 2.1 数据类型 程序=算法+数据结构+程序设计方 法+语言工具和环境。 之所以有数据类型,就是因 为计算机存储不同数据类型的方 式和空间不同。 数据类型分类 Java定义了8个基本数据类型:字节 型,短整型,整型,长整型,字符型, 浮点型,双精度型,布尔型。 它们分为4组: 整数型(byte,short,int,long) 浮点数型(float,double) 字符型(char) 布尔型(boolean) 数据类型 的分类 【例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中,使用变量要遵守“先声明后使用”的原 则。 类型转换 自动转换 需要满足两个条件 :1、类型相容; 2、目标数据类型比原 数据类型分配的内存空间 大(即由低到高)。 强制转换 发生在相容数据类型 之间(即精度由高到低) 。 语法形式: (目标类型)值 基本数据类型按精度从“低”到“高”的顺序为: byte short int long float double 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 关系与逻辑运算符 运算符 运算 用法返回true的情况 大于 x1 x2x1大于x2 = 不小 于 x1 = x2x1 大于或等于x2 右移 x n 将x各位右移n位,左边按符号补0 或补1 11110101 无符号右 移 x n将x右移n位(无符号的) ,左边补 000110101 case 符合数字或字符: 语句块2; break; default: 语句块3; switch语句首先计算条件表达式的值,如 果表达式的值和某个case后面的常量数 值相同,就执行该case里的若干条语句 ,直到break语句为止。若没有一个常 量与表达式的值相同,则执行default后 面的若干条语句。default是可有可无的 ,如果它不存在,并且所有的常量数值 都和表达式的值不相同,那么switch语 句就不进行任何处理。 2.3.5 循环语句 1、for循环语句 for循环语句的语法结构如下: for(初始条件;终止条件;增量) 循环体; 图2.7 循环语句的执行过程 2.4 数组 数组是一组相同类型变量的集合,可以使 用共同的名字引用它。 2.4.1 创建和使用数组 1、声明数组 (1)声明一维数组的格式: 数组元素的类型 数组的名字; (2)声明二维数组的格式: 数组元素的类型 数组的名字; 2、 创建数组 一般来说,当创建数组的时候,使用 new 操作符,后面跟着数组元素的数据结构 。然后将元素的数目用方括号括起来, 其格式如下所示: 数组名字 = new 数组元素的类型数组 元素的个数 ; 例: a = new int10; 3、数组元素的使用 数组可以通过下标访问自己的元素: int a =new int10; for(int i=0;ia.length;i+) ai=i; System.out.print(ai+“); 4、确定数组的大小 为了获得数组的大小,可以使用下面的代码: 数组名.length; 注意,不能在length后面加一个圆括号( ), 否则造成错误,因为length不是一个方法。 2.4.2 多维数组的应用 在Java中,多维数组(multidimensional arrays)是由若干行和若干列组成数组 。在人们工作生活与学习中,要使用二 维表格、矩阵、行列式等,都可以表示 成多维数组。例如: int D = new int34; 该语句声明并创建了一个3行4列的数组D 。这个数组在逻辑上可以表示成一个int 类型的矩阵。 也就是说,这个数组在逻辑上可以表示为 : D00 D01 D02 D03 D10 D11 D12 D13 D20 D21 D22 D23 2.5 向量 1、向量(Vector) 向量(Vector)是Java.util包(java.util包是 专门保存各种常用工具类的类库)提供 的一个工具类。它有类似数组的顺序存 储的数据结构,但是具有比数组更强大 的功能。 2、创建向量对象 Vector类有三个构造函数: (1) Vector(): 构造一个空向量。 (2) Vector(int i): 用指定的初始化容量构造一 个空向量。 (3) Vector(int i, int j): 用指定的初始化容量i和 容量增量j构造一个空向量。 下面的语句就利用构造函数创建了一个向量 序列: Vector v1 = new Vector(100,10); 向量的常用方法 方 法说说 明 addElement(Object obj)在向量尾部添加指定组组件,并 且长长度加一。 capacity()返回该该向量的当前容量。 copyInto(Object anArray) 把该该向量的元素复制到指定数 组组中。 elementAt(int index)返回指定下标处标处 的组组件。 firstElement()返回该该向量的第一个元素。 lastElement()返回向量的最后一个元素。 size()返回该该向量的元素数。 insertElementAt(Object obj,int index) 在指定的 index 处处插入作为为 该该向量元素的指定对对象。 2.6 字符串的简单介绍 1、字符串声明与创建 下面是声明并创建字符串的语句: String str ; str = “this is a Stirng. “; 也可以将上面二条语句合并为一条语句: String str = “this is a String. “; 2、字符串操作 方 法说 明 length()取得字符串的字符长度 equals()判断两个字符串中的字符是 否等于 toLowerCase()转换字符串中的英文字符为 小写 toUpperCase()转换字符串中的英文字符为 大写 (1)求字符串的长度 例: String str1 = “Hello! “; String str2 = “你身体好吗?“; System.out.println(str1.length(); System.out.println(str2.length(); (2)比较两个字符串 String类中有三个方法可以比较两个字符串是 否相同。 public int compareTo(String str); public boolean equals(Object obj); public boolean equalsIgnoreCase(String str); 这里需要特别说明,比较二个数值x、y是否相等, 我们使用x=y。而比较二个字符串相等则不能使用 “=”来比较。请看下面的程序段: (3)字符串与数值的转换 字符串str转换为整型: int x=Integer.paresInt(str); 字符串str转换为float型: float n=Integer.paresFloat(str); 例如: String str = String.valueOf(123.4); (4)字符串与字节数组的转化 要将一个字符串转化为字节数组,可用下 列方法: byte d=字符串对象.getBytes(); 反之,要将一个字节数组转化为字符串, 则用字符串的构造方法就能达到目的。 String(byte, int offset, int length) 3、使用StringTokenizer字符分析器 有时我们需要将字符串分解成可被独立使用的单 词,这些单词叫做语言符号。 当我们分析一个字符串并将字符串分解成可被独 立使用的单词时,可以使用java.util包中的 StringTokenizer类。StringTokenizer对象被称为 字符分析器。 其构造方法为: StringTokenizer(String str, String delim) 将指定字符串str按字符delim为分隔符进行分解 。 StringTokenizer类的常用方法: hasMoreTokens():检测字符串中是否还 有语言符号,若有语言符号就返回true ,否则返回false。 nextToken():逐个获取字符串中的语言符 号。 countTokens():计算调用了nextToken()方 法的次数,用于统计字符串中的语言符 号的个数。 4、main
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家人合伙开店合同范本模板
- 二战如何签订劳动协议书
- 汽车装潢出租转让合同范本
- 养殖类技术培训合同范本
- 小儿护理查房课件
- 小儿意外伤害课件
- 兰州职业技术学院单招《英语》考前冲刺练习试题带答案详解(培优)
- 2025年标准租赁合同模板
- 难点详解京改版数学8年级上册期末试卷【培优A卷】附答案详解
- 难点解析人教版7年级数学上册期末试题完整版附答案详解
- 2025年长沙市中考物理试卷真题(含答案)
- 外科术后康复
- 口腔科主任述职报告
- 心脏骤停的急救及处理
- 营养科专案管理制度
- 达州国企考试试题及答案
- 2025四川省人力资源和社会保障厅制劳动合同书
- 2025-2030年海洋环境监测行业市场发展分析及发展前景与投资机会研究报告
- 浙江花园营养科技有限公司 年产750吨饲料级VD3油剂项目环评报告
- 渠道终端销售合同协议
- 煤矿其他从业人员培训课件
评论
0/150
提交评论