对象的属性变量的详述.ppt

上传人:小飞机 文档编号:5965172 上传时间:2023-09-09 格式:PPT 页数:41 大小:245.63KB
返回 下载 相关 举报
对象的属性变量的详述.ppt_第1页
第1页 / 共41页
对象的属性变量的详述.ppt_第2页
第2页 / 共41页
对象的属性变量的详述.ppt_第3页
第3页 / 共41页
对象的属性变量的详述.ppt_第4页
第4页 / 共41页
对象的属性变量的详述.ppt_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《对象的属性变量的详述.ppt》由会员分享,可在线阅读,更多相关《对象的属性变量的详述.ppt(41页珍藏版)》请在三一办公上搜索。

1、Chap 03对象的属性-变量详述,掌握Java中的基本数据类型掌握变量的声明和使用掌握Java数组的定义和使用掌握对象的成员变量的赋值和使用,变量与基本数据类型,Java与C一样,数据通过变量来存储和访问。变量必须先声明再使用,格式如下:变量的类型 变量名称;变量的类型 变量名称1,变量名称2,;变量的类型 变量名称 变量的值;Java语言里变量只声明而不赋初值,会自动赋默认值。Java中可以将声明放在代码中的任何地方,良好的编程习惯提倡把变量的声明尽可能地靠近变量第一次使用的地方。,整型,整型相关说明,在Java语言规定,直接写出的整数被认为是int类型;如果需要描述一个byte类型的数据

2、,通常要使用强制类型转换,如(byte)10如果要描述一个short类型的数据,需要使用强制类型转换,如(short)15要描述长整型的整数需要在数字后要加上字母L或l,如6000000000L八进制的数以0开头,十六进制数以0 x或0X开头。如010表示八进制中的8,0 x10表示十六进制中的16。Java中没有任何无符号unsigned类型。,实型,实型相关说明,Java语言规定,直接写出的浮点数被认为是double类型。也可以通过在数字后加上字母D或d来表明当前数据是double型的实数常量,如37.4D,-3.69d等。要描述float型的实数常量需要在数字后要加上字母F或f,如2.5

3、F,0.7f都是单精度浮点类型数据。float类型变量保留67位有效数字,double类型变量保留15位有效数字,实际精度取决于具体数值。,字符型,Java语言中的字符采用UNICODE编码,一个字符在内存中占两个字节空间。这使得Java可以使用char类型描述更多种类的字符,包括英文字母、标点符号、汉字、日文、韩文等。字符类型的数据必须用单引号括起来,一个字符型的变量只能存放一个字符。如:char ch1=a,ch2=*,ch3=好;char类型的变量可以与整数类型的变量通用,字符型,Java中的字符型变量可以用来存储转义字符。,布尔类型(逻辑型),布尔类型用来描述真与假,关键字是boole

4、an每个boolean类型的变量在内存中占1个字节的空间。boolean类型数据的常量有true和false,boolean类型的变量只能存储这两个值之一,不能存储其它内容。在Java语言中逻辑数据不会转换成其它数值类型的数据。,数据类型的转换,自动类型转换(隐式),数据类型的转换,强制类型转换:将一个数据或表达式强制转换成所需的更低类型,格式为:(类型名)要转换的数据 强制类型转换是得到一个中间变量,原变量类型并不发生变化。boolean类型不能与任何数值类型进行类型转换。,常量,Java共有五种类型的常量。整型常量:如12,12L浮点型常量:如12F,12D,12.0E2D布尔型常量:如t

5、rue,false字符型常量:如a,9字符串常量:如“a”,”Nice”,“你好”自定义常量用关键字final来修饰,要在定义时赋值,常量定义之后就不能再改变它的值。final public char ch=#;,字符串类型,Java提供了字符串类型String,实际上String是一个类,它不属于基本数据类型,但字符串使用得实在太频繁了,所以Java提供了对它更方便的使用方式。字符串变量(确切说应该是对象,因为String其实是一个类,但我们简单说为变量),可以像基本数据类型变量那样被赋值、访问。,算术运算符,有关算术运算符的说明,Java语言中运算符“+”可用来连接两个字符串。“Abc”+

6、123的结果为”Abc123”整数相除结果取整。操作数有小数是结果为小数。Java语言里“%”可对整数取模,也可对小数取模。16.2%5值为1.2可对char类型数据运算,不能对boolean类型数据进行运算。先(乘、除、取余),后(加、减)。,自增自减运算符,+、-使变量增1、减1+i,i+相当于i=i+1;-i,i-相当于i=i-1;,先执行i=i+1,再使用i先使用i,再执行i=i+1,a=3;b=-a;rint(b+(a+);,输出:2 2 最后a的值变为3,符号在前,先自增(减)符号在后,后自增(减),/*a=a-1;b=a;a为2,b为2*/,关系运算符,关系运算符的使用注意:区分

7、“=”与“=”。a=1是比较变量a的值是否等于1,结果为逻辑值。a=1是将常量1赋值给变量a。5=5的结果为true。关系运算符中=和!=的优先级略低,混合比较时其他关系运算符要先执行,后判断相等(=)和不等(!=)。,逻辑运算符,在混合运算时,逻辑非(!)的优先级别最高,逻辑与(&)和逻辑或(|)的优先级别低于关系运算符的。利用&、|做逻辑或运算时,如果只计算运算符表达式左边的结果即可确定与、或的结果,则右边的表达式将不会执行。,赋值运算符,自右向左赋值,左边必须是变量,不能写常量或表达式。赋值运算符的优先级别低于其他运算符,在混合使用时,先处理等号右边的复杂表达式,然后把处理结果赋给左边的

8、变量。在使用运算符时,尽量使其右端表达式的类型与其左端变量类型相一致,否则要进行类型转换。允许进行连续赋值。复合的赋值运算符:+=、-=、/=、*=、%=,先运算后赋值,后面的表达式相当于有括号。,条件运算符,?:先判断表达式1,如果值为true,则执行表达式2,将其结果作为三目条件表达式的值;否则,将表达式3的结果作为三目条件表达式的值。条件运算符可简单替换双分支选择结构语句。,数 组 的 概 念,Java中的数组是一个复合数据类型数组中的元素具有相同的类型元素类型可以是基本数据类型,类的对象,也可以是数组类型数组元素是有序排列的,使用下标来访问数组有一个属性length,表示数组的长度数组

9、必须经过声明,构造,赋初值三个步骤以后才能使用(定义内存分配赋值),一维数组的声明,声明一个一维数组的方式如下:元素数据类型 数组名称;元素数据类型 数组名称;注意:两种声明方式完全相同在 里面什么都不能有声明一个数组并没有为数组元素分配内存,因此还不能使用它们。,一维数组的创建,声明数组后,通过使用运算符new为数组分配内存空间,之后数组才能存储数据。格式:数组名称=new 元素数据类型元素个数;,/*声明整型数组intArray,包含10个元素*/int intArray;intArray=new int10;/*声明单精度型数组floatArray,包含15个元素*/float floa

10、tArray=new float15;,一维数组创建的注意,一维数组在声明的时候,里面是什么都不能有的,但是在使用new运算符进行创建的时候,必须指明数组的长度,只有这样系统才能知道应该给这个数组分配多少内存。与C语言不同,Java允许在创建数组时使用整型变量来指定数组元素的个数。这位数组的使用带来了很大的灵活性。,一维数组的创建,声明整型数组a,包含10个元素 int a=new int10;,a0 a1 a2 a3 a4 a5 a6 a7 a8 a9,数组a,赋值符“=“此处实现让a指向这10个连续空间。,一维数组的创建,声明单精度型数组b,包含5个元素 int n=5;float b=n

11、ew floatn;,b0 b1 b2 b3 b4,数组b,一维数组的初始化,Java中,用new运算符构造一个数组时,系统就自动将这个数组初始化好了。即数组的各个元素都被赋了初始值。如下:,数组的静态初始化:声明数组的同时对数组进行初始化赋值。char ch=a,b,c,d,n;将各个元素的初始值放在赋值号=右边的大括号里面,各个值之间用逗号,隔开在赋值号=的右边没有new运算符,也不说明数组的长度,系统会根据初始值的个数,自动计算数组的长度,一维数组的初始化,通过赋值语句对数组进行初始化赋值。,一维数组的初始化,int num=new int10;for(int i=0;i=10;i+)n

12、umi=i*10;,String s=new String3;s0=“I”;s1=“love”;s2=“China!”;,类类型的数组在创建之后,还要记得在使用前必须创建每个数组元素对象。,一维数组的初始化,Student stu=new Student3;stu0=new Student();stu1=new Student();stu2=new Student();,利用length属性获得数组的长度,使用点运算符.和length属性可以得到数组的长度。格式:数组名称.lengthint intArray=new int20;int L=intArray.length;,则将数组的长度值2

13、0赋值给了变量L;,一维数组的有关说明,数组的类型可以是复杂结构类型;数组名代表数组的首地址,数组间可相互直接赋值,表示数组共同指向同一地址。int a=1,2,3,4,5,b;b=a;/数组b指向和数组a相同的地址,a0 a1 a2 a3 a4,数组a,b0 b1 b2 b3 b4,数组b,一维数组的有关说明,引用数组元素使用数组名加下标,下标从0开始。对数组进行构造时,中括号里可以使用带有整型数值的变量。引用数组元素时下标不能超出范围。Java会自动对下标越界检查,编译时没有提示,但运行产生错误。,从命令行输入数据,步骤一:引入相关类。import;步骤二:创建Scanner类的一个对象。

14、Scanner reader=new Scanner(System.in);步骤三:使用reader对象调用下列方法读取用户输入的各种类型数据。nextBoolean();nextByte();nextShort();nextInt();nextLong();nextFloat();nextDouble();,从命令行输入数据,import java.util.*;class ReadDemo public static void main(String args)(请输入若干个数,每输入一个数回车确认);(最后输入数字0结束输入操作);Scanner reader=new Scanner(S

15、ystem.in);double sum=0;int m=0;double x=reader.nextDouble();while(x!=0)m=m+1;sum=sum+x;x=reader.nextDouble();System.out.println(m+个数的和为+sum);System.out.println(m+个数的平均值为+sum/m);,对象的成员变量,成员变量用来描述对象的状态(属性);成员变量可以根据需要使用任意类型,包括数组、类类型等;,class StudentString name;double score;,class LinePoint p1,p2;class P

16、ointdouble x,y;,对象的成员变量,复杂类型的成员变量要注意必须先创建,然后再使用。如数组、类类型。通常不允许通过对象直接操作成员变量,要在类的内部定义相应的方法对成员变量进行数据的存储或访问。static修饰过的变量称为静态变量,静态变量可以通过类名直接引用。相关内容将在第五部分具体介绍。,对象的成员变量,可以在定义类的同时给成员变量赋初值。class Rectangleint width=10;int height=20;相当于规定了使用该类时成员变量的默认值。如,使用上面的Rectangle类创建对象,每个对象的长width和宽height都默认为10、20。,对象的成员变量

17、,成员变量赋初值必须与成员变量的声明写在同一条语句里,因为类的内部不允许直接出现执行语句。class Rectangleint width;int height;width=10;height=20;,小结,基本数据类型:注意long与float类型数据要加字母后缀;boolean类型不能与数值型数据相互转换;Java中的char类型占2个字节,可保存单个汉字、日文等。运算符:%可对实数进行取余的运算;+可实现字符串连接功能。数组:声明后需要创建,然后才能使用。声明时内不写数字,创建使用new来实现。可使用整型变量或表达式作为创建时元素个数值。,小结,类类型的数组在创建之后,还要记得在使用前必须创建每个数组元素对象。对象的成员变量可以带指定的初值。对象的成员变量可以是基本数据类型,也可以是数组、类等复杂数据类型。在使用时要按照所属类型注意语法要求。,

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号