对象的属性变量的详述ppt课件_第1页
对象的属性变量的详述ppt课件_第2页
对象的属性变量的详述ppt课件_第3页
对象的属性变量的详述ppt课件_第4页
对象的属性变量的详述ppt课件_第5页
已阅读5页,还剩36页未读 继续免费阅读

下载本文档

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

文档简介

1、掌握掌握JavaJava中的根本数据类型中的根本数据类型掌握变量的声明和运用掌握变量的声明和运用掌握掌握JavaJava数组的定义和运用数组的定义和运用掌握对象的成员变量的赋值和运用掌握对象的成员变量的赋值和运用wJava与与C一样,数据经过变量来存储和访问。变一样,数据经过变量来存储和访问。变量必需先声明再运用,格式如下:量必需先声明再运用,格式如下:w变量的类型变量的类型 变量称号;变量称号;w变量的类型变量的类型 变量称号变量称号1,变量称号变量称号2,;w变量的类型变量的类型 变量称号变量称号 变量的值;变量的值;wJava言语里变量只声明而不赋初值,会自动赋默言语里变量只声明而不赋初

2、值,会自动赋默许值。许值。wJava中可以将声明放在代码中的任何地方,良好中可以将声明放在代码中的任何地方,良好的编程习惯提倡把变量的声明尽能够地接近变量的编程习惯提倡把变量的声明尽能够地接近变量第一次运用的地方。第一次运用的地方。 int常整型常整型 4字节字节int x = -100; byte字节型字节型 1字节字节byte a = 5; short 短整型短整型 2字节字节short m = 25; long长整型长整型 8字节字节 long n = -2000000000L;w在在Java言语规定,直接写出的整数被以为是言语规定,直接写出的整数被以为是int类型;类型;w假设需求描画

3、一个假设需求描画一个byte类型的数据,通常要运用类型的数据,通常要运用强迫类型转换,如强迫类型转换,如 (byte)10w假设要描画一个假设要描画一个short类型的数据,需求运用强类型的数据,需求运用强迫类型转换,如迫类型转换,如 (short)15w要描画长整型的整数需求在数字后要加上字母要描画长整型的整数需求在数字后要加上字母L或或l,如,如6000000000Lw八进制的数以八进制的数以0开头开头,十六进制数以十六进制数以0 x或或0X开头。开头。如如010表示八进制中的表示八进制中的8,0 x10表示十六进制中表示十六进制中的的16。wJava中没有任何无符号中没有任何无符号uns

4、igned类型。类型。关键字关键字名称名称存储需存储需求求定义变量举例定义变量举例float单精度浮点型单精度浮点型4字节字节float x = 3.25f;double 双精度浮点型双精度浮点型8字节字节double y = 37.4;wJava言语规定,直接写出的浮点数被以为是言语规定,直接写出的浮点数被以为是double类型。类型。w也可以经过在数字后加上字母也可以经过在数字后加上字母D或或d来阐明当前来阐明当前数据是数据是double型的实数常量,如型的实数常量,如37.4D,-3.69d等。等。w要描画要描画float型的实数常量需求在数字后要加上型的实数常量需求在数字后要加上字母字

5、母F或或f,如,如2.5F,0.7f都是单精度浮点类型数都是单精度浮点类型数据。据。wfloat类型变量保管类型变量保管67位有效数字,位有效数字,double类类型变量保管型变量保管15位有效数字,实践精度取决于详位有效数字,实践精度取决于详细数值。细数值。wJava言语中的字符采用言语中的字符采用UNICODE编码,一编码,一个字符在内存中占两个字节空间。这使得个字符在内存中占两个字节空间。这使得Java可以运用可以运用char类型描画更多种类的字符,类型描画更多种类的字符,包括英文字母、标点符号、汉字、日文、韩包括英文字母、标点符号、汉字、日文、韩文等。文等。w字符类型的数据必需用单引号

6、括起来,一个字符类型的数据必需用单引号括起来,一个字符型的变量只能存放一个字符。如:字符型的变量只能存放一个字符。如:wchar ch1 = a, ch2 = *, ch3 = 好好;wchar类型的变量可以与整数类型的变量通用类型的变量可以与整数类型的变量通用wJava中的字符型变量可以用来存储本义字符。转义字符转义字符名称名称n换行换行t制表位制表位r回车回车反斜线反斜线单引号单引号”双引号双引号布尔类型用来描画真与假,关键字是布尔类型用来描画真与假,关键字是boolean每个每个boolean类型的变量在内存中占类型的变量在内存中占1个个字节的空间。字节的空间。boolean类型数据的常

7、量有类型数据的常量有true和和false,boolean类型的变量只能存储这两个值之类型的变量只能存储这两个值之一,不能存储其它内容。一,不能存储其它内容。在在Java言语中逻辑数据不会转换成其它数言语中逻辑数据不会转换成其它数值类型的数据。值类型的数据。自动类型转换隐式自动类型转换隐式charcharbytebyteshortshortintintlonglongfloatfloatdoubledouble强迫类型转换:将一个数据或表达式强强迫类型转换:将一个数据或表达式强迫转换成所需的更低类型,格式为:迫转换成所需的更低类型,格式为:(类型名类型名) 要转换的数据要转换的数据 强迫类型转

8、换是得到一个中间变量,原强迫类型转换是得到一个中间变量,原变量类型并不发生变化。变量类型并不发生变化。 boolean类型不能与任何数值类型进展类型不能与任何数值类型进展类型转换。类型转换。wJava共有五种类型的常量。共有五种类型的常量。w整型常量:如整型常量:如12, 12Lw浮点型常量:如浮点型常量:如12F, 12D, 12.0E2Dw布尔型常量:如布尔型常量:如true, falsew字符型常量:如字符型常量:如a, 9w字符串常量:如字符串常量:如“a, Nice, “他好他好w自定义常量用关键字自定义常量用关键字final来修饰,要在定义时来修饰,要在定义时赋值,常量定义之后就不

9、能再改动它的值。赋值,常量定义之后就不能再改动它的值。wfinal public char ch = #; Java提供了字符串类型提供了字符串类型String,实践上,实践上String是一个类,它不属于根本数据类是一个类,它不属于根本数据类型型,但字符串运用得真实太频繁了,所以但字符串运用得真实太频繁了,所以Java提供了对它更方便的运用方式。提供了对它更方便的运用方式。字符串变量确切说应该是对象,由于字符串变量确切说应该是对象,由于String其实是一个类,但我们简单说为其实是一个类,但我们简单说为变量,可以像根本数据类型变量那样变量,可以像根本数据类型变量那样被赋值、访问。被赋值、访问

10、。 +加法运算符,或正值运算符。加法运算符,或正值运算符。 如如3+5,+3- 减法运算符,或负值运算符。减法运算符,或负值运算符。 如如5-2,-3*乘法运算符。乘法运算符。 如如3*5/除法运算符。如除法运算符。如5/3%模运算符模运算符(求余运算符求余运算符),可对小数可对小数操作操作。 如如7%4=3 8.5%3=2.5wJava言语中运算符言语中运算符“+可用来衔接两个字可用来衔接两个字符串。符串。 “Abc+123的结果为的结果为Abc123w整数相除结果取整。操作数有小数是结果整数相除结果取整。操作数有小数是结果为小数。为小数。wJava言语里言语里“%可对整数取模,也可对可对整

11、数取模,也可对小数取模。小数取模。16.2%5值为值为1.2w可对可对char类型数据运算,不能对类型数据运算,不能对boolean类型数据进展运算。类型数据进展运算。w先乘、除、取余,后加、减。先乘、除、取余,后加、减。+、- 使变量增使变量增1、减、减1 +i,i+相当于相当于i=i+1; -i,i-相当于相当于i=i-1;先执行先执行i=i+1,再运用再运用i先运用先运用i,再执行再执行i=i+1a = 3 ;b = -a;System.out.print (b +( a +) ;输出:输出:2 2 最后最后a的值变为的值变为3符号在前符号在前,先自增先自增(减减) 符号在后符号在后,后

12、自增后自增(减减)/*a=a-1;b=a;a为为2,b为为2*/关系运算符的运用留意:关系运算符的运用留意:区分区分“=与与“=。a=1是比较变量是比较变量a的的值能否等于值能否等于1,结果为逻辑值。,结果为逻辑值。 a=1是将是将常量常量1赋值给变量赋值给变量a。5=5的结果为的结果为true。关系运算符中关系运算符中=和和!=的优先级略低,混合的优先级略低,混合比较时其他关系运算符要先执行,后判别比较时其他关系运算符要先执行,后判别相等相等=和不等和不等!=。在混合运算时,逻辑非在混合运算时,逻辑非(!)的优先级别最的优先级别最高,逻辑与高,逻辑与(&)和逻辑或和逻辑或(|)的优先

13、级的优先级别低于关系运算符的。别低于关系运算符的。利用利用&、|做逻辑或运算时,假设只做逻辑或运算时,假设只计算运算符表达式左边的结果即可确定计算运算符表达式左边的结果即可确定与、或的结果,那么右边的表达式将不与、或的结果,那么右边的表达式将不会执行。会执行。w自右向左赋值,左边必需是变量,不能写常量自右向左赋值,左边必需是变量,不能写常量或表达式。或表达式。w赋值运算符的优先级别低于其他运算符,在混赋值运算符的优先级别低于其他运算符,在混合运用时,先处置等号右边的复杂表达式,然合运用时,先处置等号右边的复杂表达式,然后把处置结果赋给左边的变量。后把处置结果赋给左边的变量。w在运用运算

14、符时,尽量使其右端表达式的类型在运用运算符时,尽量使其右端表达式的类型与其左端变量类型相一致,否那么要进展类型与其左端变量类型相一致,否那么要进展类型转换。转换。w允许进展延续赋值。允许进展延续赋值。w复合的赋值运算符:复合的赋值运算符:+=、-=、/=、*=、%=,先运算后赋值,后面的表达式相当于有,先运算后赋值,后面的表达式相当于有括号。括号。 ?: 先判别表达式先判别表达式1,假设值为,假设值为true,那么执,那么执行表达式行表达式2,将其结果作为三目条件表达,将其结果作为三目条件表达式的值;否那么,将表达式式的值;否那么,将表达式3的结果作为的结果作为三目条件表达式的值。三目条件表达

15、式的值。 条件运算符可简单交换双分支选择构造条件运算符可简单交换双分支选择构造语句。语句。wJava中的数组是一个复合数据类型中的数组是一个复合数据类型w数组中的元素具有一样的类型数组中的元素具有一样的类型w元素类型可以是根本数据类型元素类型可以是根本数据类型,类的对象类的对象,也可以是数组类型也可以是数组类型w数组元素是有序陈列的数组元素是有序陈列的,运用下标来访问运用下标来访问w数组有一个属性数组有一个属性length,表示数组的长度表示数组的长度w数组必需经过声明数组必需经过声明,构造构造,赋初值三个步骤赋初值三个步骤以后才干运用以后才干运用(定义定义内存分配内存分配赋值赋值)声明一个一

16、维数组的方式如下声明一个一维数组的方式如下:元素数据类型元素数据类型 数组称号数组称号;元素数据类型元素数据类型 数组称号数组称号;留意留意:两种声明方式完全一样两种声明方式完全一样在在 里面什么都不能有里面什么都不能有声明一个数组并没有为数组元素分配内存,声明一个数组并没有为数组元素分配内存, 因此还不能运用它们。因此还不能运用它们。声明数组后,经过运用运算符声明数组后,经过运用运算符new为数组为数组分配内存空间,之后数组才干存储数据。分配内存空间,之后数组才干存储数据。格式:格式:数组称号数组称号=new 元素数据类型元素数据类型元素个元素个数数; /*声明整型数组intArray, 包

17、含10个元素*/ int intArray; intArray=new int10; /*声明单精度型数组floatArray,包含15个元素*/ float floatArray = new float15;一维数组在声明的时候一维数组在声明的时候,里面是什么里面是什么都不能有的都不能有的,但是在运用但是在运用new运算符进运算符进展创建的时候展创建的时候,必需指明数组的长度必需指明数组的长度,只只需这样系统才干知道应该给这个数组分需这样系统才干知道应该给这个数组分配多少内存。配多少内存。与与C言语不同,言语不同,Java允许在创建数组时允许在创建数组时运用整型变量来指定数组元素的个数。运用

18、整型变量来指定数组元素的个数。这位数组的运用带来了很大的灵敏性。这位数组的运用带来了很大的灵敏性。 w声明整型数组a, 包含10个元素 w int a = new int10;a0 a1 a2 a3 a4 a5 a6 a7 a8 a9数组数组a10个内存空间,每个空间可存放一个整型数据个内存空间,每个空间可存放一个整型数据赋值符赋值符“=“此处此处实现让实现让a指向这指向这10个延续空间。个延续空间。w声明单精度型数组b,包含5个元素 w int n = 5;w float b = new floatn;b0 b1 b2 b3 b4数组数组b5个内存空间,每个空间可存放一个单精度型数据个内存空

19、间,每个空间可存放一个单精度型数据w Java中,用new运算符构造一个数组时,系统就自动将这个数组初始化好了。即数组的各个元素都被赋了初始值。w如下: 数组元素的类型数组元素的类型初始值初始值对象引用对象引用null整型变量整型变量0浮点变量浮点变量0.0布尔变量布尔变量false字符变量字符变量u0000数组的静态初始化:数组的静态初始化:声明数组的同时对数组进展初始化赋值。声明数组的同时对数组进展初始化赋值。char ch = a, b, c, d, n;将各个元素的初始值放在赋值号将各个元素的初始值放在赋值号=右边的大右边的大括号括号里面里面,各个值之间用逗号各个值之间用逗号,隔开隔开

20、在赋值号在赋值号=的右边没有的右边没有new运算符运算符,也不阐也不阐明数组的长度明数组的长度,系统会根据初始值的个数系统会根据初始值的个数,自动计算数组的长度自动计算数组的长度经过赋值语句对数组进展初始化赋值。经过赋值语句对数组进展初始化赋值。 int num = new int10; for( int i=0 ; i=10 ; i+ ) numi=i*10; String s = new String3; s0 = “I; s1 = “love; s2 = “China!;类类型的数组在创建之后,还要记得在运用类类型的数组在创建之后,还要记得在运用前必需创建每个数组元素对象。前必需创建每个

21、数组元素对象。 Student stu = new Student3; stu0 = new Student(); stu1 = new Student(); stu2 = new Student();运用点运算符运用点运算符. .和和lengthlength属性可以得到数属性可以得到数组的长度。组的长度。格式:格式: 数组称号数组称号.length.lengthint intArray = new int20;int intArray = new int20;int L = intArray.length;int L = intArray.length; 那么将数组的长度值那么将数组的长度值

22、2020赋值给了变量赋值给了变量L;L;w数组的类型可以是复杂构造类型;数组的类型可以是复杂构造类型;w数组名代表数组的首地址,数组间可相互数组名代表数组的首地址,数组间可相互直接赋值,表示数组共同指向同一地址。直接赋值,表示数组共同指向同一地址。wint a=1,2,3,4,5 , b;w b=a; /数组数组b指向和数组指向和数组a一样的地一样的地址址1 2345a0 a1 a2 a3 a4数组数组ab0 b1 b2 b3 b4数组数组b援用数组元素运用数组名加下标,下标援用数组元素运用数组名加下标,下标从从0开场。开场。对数组进展构造时,中括号里可以运用对数组进展构造时,中括号里可以运用

23、带有整型数值的变量。带有整型数值的变量。援用数组元素时下标不能超出范围。援用数组元素时下标不能超出范围。Java会自动对下标越界检查,编译时没会自动对下标越界检查,编译时没有提示,但运转产生错误。有提示,但运转产生错误。步骤一:引入相关类。步骤一:引入相关类。import java.util.Scanner;步骤二:创建步骤二:创建Scanner类的一个对象。类的一个对象。Scanner reader = new Scanner(System.in);步骤三:运用步骤三:运用reader对象调用以下方法读对象调用以下方法读取用户输入的各种类型数据。取用户输入的各种类型数据。nextBoolea

24、n();nextByte(); nextShort(); nextInt(); nextLong(); nextFloat(); nextDouble();import java.util.*;class ReadDemo public static void main(String args) System.out.println(请输入假设干个数,每输入一个数回车确认请输入假设干个数,每输入一个数回车确认); System.out.println(最后输入数字最后输入数字0终了输入操作终了输入操作); Scanner reader = new Scanner(System.in); dou

25、ble 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 StudentStrin

26、g name;double score;class LinePoint p1,p2; class Pointdouble x,y;复杂类型的成员变量要留意必需先创建,复杂类型的成员变量要留意必需先创建,然后再运用。如数组、类类型。然后再运用。如数组、类类型。通常不允许经过对象直接操作成员变量,通常不允许经过对象直接操作成员变量,要在类的内部定义相应的方法对成员变量要在类的内部定义相应的方法对成员变量进展数据的存储或访问。进展数据的存储或访问。static修饰过的变量称为静态变量,静态变修饰过的变量称为静态变量,静态变量可以经过类名直接援用。相关内容将在量可以经过类名直接援用。相关内容将在第五部分详细引见。第五部分详细引见。w可以在定义类

温馨提示

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

评论

0/150

提交评论