数据类型及其运算1.ppt_第1页
数据类型及其运算1.ppt_第2页
数据类型及其运算1.ppt_第3页
数据类型及其运算1.ppt_第4页
数据类型及其运算1.ppt_第5页
已阅读5页,还剩49页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

Java程序设计之网络编程 教学课件 第2章 数据类型及其运算 内容介绍 本章主要介绍Java基本数据类型的使用、数组的 定义及使用、数据类型的转换等内容。Java支持多 种数据类型,数据类型是Java编程基础的重要组成 部分。 Java是一种强类型的语言,这种强类型设计可以 进一步保证其安全性和健壮性。每个变量有类型, 每个表达式有类型,并且每种类型都是严格定义的 。Java编译器对所有的表达式和参数都要进行类型 相容性的检查以保证类型是兼容的。任何类型的不 匹配都是错误的,在编译器完成编译以前,错误必 须被改正 主要内容 2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组 标识符 n标识符 :为程序中的各个元素进行命名 . n一般地,在Java 中标识符是以字母、下划线 (_)、美元符号($)等其它货币符号(如, )开始的一个字符序列,后面可以跟字母、 下划线、美元符号、数字等字符。 nJava语言使用Unicode字符集 n标识符是大小写敏感的,没有最大长度的限 制,不能和关键字相同 标识符 n总体来说定义标识符可以使用的字符包括: n大小写字母、数字; nUnicode字符集中编号大于0xC0的所有字符。 n凡是用Character.isJavaIdentifierStart() 返回true ,都可作为首字符,Character. isJavaIdentifierPart()返回true,都可作为标识符 的一部分。 n合法的标识符: nBody,_test,$hello n非法标识符: n 5Test,hello*,world#,class n注意:在中文环境下,可以使用汉字作为标 识符。例如,int 中文=5; 关键字 n所有的关键字都是小写的。如果被大写,就不是关键 字了 。 n用于数据类型的关键字 nbyte short int long float double char boolean n用于流程控制语句的关键字 nif else switch case default do while for break continue n方法、类型、变量的修饰关键字 nprivate public protected final static abstract synchronized volatile n异常处理关键字 ntry catch finally throw throws 关键字 n对象相关关键字 nnew extends implements class instanceof this super n字面值常量关键字 nfalse true null n方法相关关键字 nreturn void n包相关关键字 npackage import 注释 n单行注释 n单行注释以“/”开头,至该行结尾,其格式如下: n多行注释 n/* 注释文本 n n*/ n文档注释 n/*注释文本 n*注释文本 n* n*/ 主要内容 2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组 变量 n修饰符 =,=.; nint i; nint j=5,k=4; nstatic int m=0; nprivate float ft; n作用域分,变量大致可分为:局部变量 、类成员变量、方法参数、异常处理参 数。 变量作用域 n局部变量是在方法内部或代码块中声明 的变量,它的作用域为它所在的代码块 ,在程序设计中,以“ ”为界。 n类成员变量,它的作用域是整个类。又 可以细分为静态变量和实例变量 n方法参数的作用域,是它所在的方法 n异常处理参数的作用域,是它所在的异 常处理部分 常量 n 整形常量234, 实型常量23.4, 字符常量a, 布尔常量true和false, 字符串常量“hello world!” nfinal关键字(后面还会碰到) final int MAX=100; final int MAX_LOOP=5; 主要内容 2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组 数据类型分类 数据类型 基本类型 引用类型 数值类型 字符类型(char) 布尔类型(boolean) 整数类型(byte,short,int,long) 浮点类型(float,double) 类(class) 接口(interface) 数组 图 2-1 Java语言的数据类型 数据类型 nJava的基本数据类型都有固定的数据 位,不随运行平台的变化而变化。 n引用类型都是用类或对象实现的。 数据类型 布尔类型 nboolean b=false; 字符类型 n一个字符用一个 16位的Unicode 码表示 nchar c1,c2=A ; nA的Unicode码 是u0061 n中的Unicode码 是u4e2d 转义转义 字符 描述 ddd1到3位8进制数所表示的字符(ddd) uxxx x 1到4位16进制数所表示的字符 (xxxx) 单引号字符 “双引号字符 反斜杠 r回车 n换行 f走纸换页 t横向跳格 b 退格 整数和字符型数据在一起运 算 与C/C+不同,Java的字符型数据与整型不同, 不能用作整数,但是可以把整数和字符型数据在一 起运算,从 字符型 向 整数型 发生自动类型转换。 从整数向字符型转换时需要强制类型转换。例如: int i=5; char one=1; int j=a; /由字符向整数,自动类型转换 char c=(char)(i+one+j); 在上例的第4条语句,字符型和整数在一起运算 ,字符型变量首先转换为整型,这样i+one+j的运算 结果为151,再通过强制类型转换成字符型,字符变 量c的值为?。 整数类型 nJava中的整数有三种进制形式表示: n十进制:用09的数值表示,首位不能为0,例如 :124,-100; n八进制:以0开头,后跟多个07之间的数字,如 0134; n十六进制:以0x或者0X开头,后跟多个09之间 的数字、或AF之间的的大写字、或者af之间的 小写字母。af或者A-F分别表示1015,例如, 0x23FE,等于十进制数9214。 整数类型 数据类类型所占位数数的范围围 byte8-27 (27 -1) short16-215 (215 -1) int32-231 (231 -1) long64-263 (263-1) 在表示long型常量时,需要在数字后面加上 后缀L或者l。例如3L表示一个long型的常量 ,而不是int型常量。 浮点类型 数据类类型所占位数数的范围围 float(单精度浮点数)323.4e-038 3.4e+038 double(双精度浮点数)641.7e-308 1.7e+308 一个浮点数隐含为double型。在一个浮点 数后加字母F或f,表示float型。常量值 3.45的类型是double;3.45F的类型是float 。 各类型数据间的相互转换 n自动类型转换 n从低级到高级发生自动类型转换。从表达范围小的类型向 表达范围大的类型发生自动类型转换。不同数据类型的转 换如下所示: 低- -高 byte,short,char- int long float double n注意:byte,short和char在一起运算时,首先转换 为int类型进行运算。 n【例2-1】分析下面程序中的错误。 nbyte b1=5; nshort s1=6; nshort s2 ; n s2=b1+s1; 类型转换 n强制类型转换 n由高级向低级数据类型转换时,需要强制 类型转换。例如: int i65; char c; c=(char)i; 把int型变量转换成char型,需要强制类型转 换。 主要内容 2.1标识符和关键字 2.2常量和变量 2.3基本数据类型 2.4运算符 2.5表达式 2.6数组 算数运算符 运算符用法含义义结结合性 二元 运算符 +op1+op2加法左 -op1-op2减法左 *op1*op2乘法左 /op1/op2除法左 %op1%op2模运算(求余) 左 一元 运算符 +op1正数右 -op1负数右 +op1,op1+自增右,左 -op1, op1+自减右,左 算数运算符的特点 n对于二元运算符,运算结果的数据类型一般为两个 操作数中表达范围较大的类型。例如,一个整数和 浮点数运算的结果为浮点数。 n对于一元运算符,运算结果的类型与操作数的类型 相同。 n自增、自减运算符有前缀和后缀两种形式,当是前 缀形式(即+、-符号出现在变量的左侧)时,对 变量实施的运算是“先运算后使用”; 当是后缀形式 (即+、-符号出现在变量的右侧)时,对变量实 施的运算是“先使用后运算”。 算数运算符的注意事项 n在Java中,“%“(求模运算符)的操作数可为 浮点数,如52.3%10=2.3; nJava对“+“运算进行了扩展,可作字符串连接 运算符,如“ab“+“efd“得“abefd“; n做“+“运算时,如果一个操作数是字符串,其它 操作数自动转换成字符串.如: String s; s=“s:“+4*5; 结果是s=“s:20“; nbyte,short,char等类型进行混合运算时, 会先自动转换为int类型再运算。 例:Test.java public class Test public static void main(String args) int i=29; int j=3; float a=23.5f; double b=4.0 ; System.out.println(“i+a=“+(i+a); System.out.println(“i*j=“+(i*j); System.out.println(“i/j=“+(i/j); /运算结果为整数 System.out.println(“i%j=“+(i%j); /求余数 System.out.println(“a*b=“+(a*b); System.out.println(“a/b=“+(a/b); /运算结果为浮点数 System.out.println(“a%b=“+(a%b); /结果为浮点数 System.out.println(“i+=“+(i+); / 先使用,后自增 System.out.println(“+i=“+(+i); / 先自增,后使用 赋值运算符 nj=i+20; 运算符示例含义义 +=count += 2count = count + 2 -=count -= 2 count = count - 2 *=count *= 2 count = count * 2 /=count /= 2 count = count / 2 %=count %= 2count = count % 2 赋值相容 n变量和类型相同 赋值 n变量类型比表达式长 自动转换-赋值 n变量类型比表达式短 出错-强制转换 条件运算符 n(boolean_expr)? true_statement:false_statement; 例如: result=(sum=0)?100:2*num; 位运算符 nJava 用补码表示二进制数 n1表示为二进制为 n 00000000 00000000 00000000 00000001(4个字节) n-1表示为二进制为 n11111111 11111111 11111111 11111111 (4个字节) 位运算符 运算符示例含义义 n创建了一个包含个元素的数组,每个 元素被自动初始化为 nint a =new int5; n每个数组都有一个属性length,指明 它的长度 一维数组的图形表示 a null (a) int a a 0x0345 o 堆 a0 0 1 2 3 4 a1 a2 a3 a4 (b) int a =0,1,2,3,4 a 0x4345 o 堆 a0 0 0 0 0 0 a1 a2 a3 a4 (c) int a ; a=new int5; 图2-2 一维数组存储结构 变量的自动化初始值 数组组元 素的 类类型 初始 值值 byte, short,i nt ,long 0 float , double 0.0 char0 booleanfalse 引用类 型 null 例: 【例2-3】求一维数组的平均值。 ArrayAvg.java 注意:数组下标从0开始 二维数组 n最常用的二维数组是一个特殊的一维数组, 它的每个元素都是一个一维数组。又叫做数 组的数组 n int two; n或 int two; n这里只有变量的定义,没有分配内存空间。 n在定义二维数组时也可以赋初值,将数组元 素的值用多层括号括起来,例如: n

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论