Java语言05(数据类型类和数组对象).ppt
数据类型类和数组对象教学目标1.1.掌握数据类型类的基本用法。2.2.能够熟练使用一维数组、二维数组。3.3.理解命令行参数数据类型类n nJava提供了数据类型类,也称包装类,它是封装了基本数据类型的类。n n在进行数据类型转换时,需要使用数据类型类。n n某些场合必须使用数据类型类,例如集合类中要求的成员必须是类,而不能是基本类型的变量。n n数据类型类共有8个:Character、Byte、Short、Integer、Long、Float、Double、Boolean。数据类型类的属性除了boolean类以外,其他数据类型类所都具有属性:1.1.MAX_VALUE属性:代表数据类型类所表示的最大值。2.2.MIN_VALUE属性:代表数据类型类所表示的最小值。这两个属性都静态成员变量,可以通过类名直接使用。数据类型类的构造方法使用数据类型类的构造函数,可以把基本数据类型整合到Java数据类型类的对象层次结构中。例如:double dd=new Double(1.2345);integer ii=new Integer(4567);数据类型类的常用方法数据类型类提供了一批成员方法,以方便数据之间的相互转换。n nxxxValue()成员方法:获得对象中的基本类型数据。n ntoString()成员方法:将基本数据类型类中的数值转换为字符串。n nvalueOf(String s)静态方法:把字符串s转化成相应的数据类型对象。Character类无此方法。n nparesXxxx(String s)静态方法:把字符串s转化成基本类型的数据。Character和Boolean无此方法。判断无穷大和非数字的方法n nFloat类和Double类定义了isInfinite()和isNaN()n nisInfinite()当被检验的值为无穷大或无穷小时,返回真值。n nisNaN()当被检验的值为非数字时,返回真值。n nclass InforNaN/class InforNaN/无穷和非数字判断示例无穷和非数字判断示例n n n n public static void main(String args)public static void main(String args)n n n n Double b=new Double(1/0.);Double b=new Double(1/0.);n n Double d=new Double(0/0.);Double d=new Double(0/0.);n n System.out.println(b+:+b.isInfinite()+,+b.isSystem.out.println(b+:+b.isInfinite()+,+b.isNaN();NaN();n n System.out.println(d+:+d.isInfinite()+,+d.isSystem.out.println(d+:+d.isInfinite()+,+d.isNaN();NaN();n n n n 数组n n数组是由一组类型相同的元素组成的有顺序的数据集合。数组中的每个元素的数据类型相同。数组的元素通过下标取用。n nJava数组是一个独立的对象,要经过定义、分配内存及赋值后才能使用。一维数组的定义与创建Java语言中,数组的创建分二个步骤:1.1.定义一维数组变量2.2.为数组分配内存Java语言创建数组的三种方法方法一:1.1.先定义数组变量其格式为:先定义数组变量其格式为:数组元素类型数组名;数组元素类型数组名;2.2.再创建数组对象,并为数组分配空间再创建数组对象,并为数组分配空间数组名new 数组元素类型数组元素个数n nint a;n ndouble b;n na=new int3;n nb=new double10;方法二:同时定义数组变量并创建数组对象:数组元素类型数组元素类型 数组名数组名=new=new 数组元素类型数组元素类型 数组元素个数数组元素个数 int x=new int3;double y=new double10;方法三不使用运算符new,而是直接初始化:数组元素类型 数组名=值1,值2,;int a=11,12,13,14,15;可以使用new运算符扩大已经创建了的数组空间:int x=new int3;x=new int5;public class IntArraypublic class IntArray public static void main(String args)public static void main(String args)int a=1,2,3;int a=1,2,3;int i,sum=0;int i,sum=0;for(i=0;ia.length;i+)for(i=0;ia.length;i+)sum+=ai;sum+=ai;for(i=0;ia.length;i+)for(i=0;i0;j-)for(int j=5;j0;j-)n n for(int i=0;ij;i+)for(int i=0;ij;i+)n n n n if(testitesti+1)if(testitesti+1)n n n n t=testi;t=testi;n n testi=testi+1;testi=testi+1;n n testi+1=t;testi+1=t;n n n n n n for(int i=0;i6;i+)for(int i=0;i6;i+)n n System.out.println(testi);System.out.println(testi);n n n n 对象数组当数组元素的类型是某种对象类型时,则构成对象数组。使用“.”运算符访问对象中的成员。二维数组二维数组是一个特殊的一维数组,即一维数组中的每个元素又是一个一维数组,则构成二维数组。二维数组的定义二维数组的定义格式为:数据类型数组名;数据类型数组名;二维数组的创建与一维数组一样,这时对数组元素也没有分配内存空间,同样要使用运算符new来创建数组对象,分配内存:类型类型类型类型 数组名数组名数组名数组名=new=new=new=new 类型类型类型类型 首维元素数首维元素数首维元素数首维元素数次维元素数次维元素数次维元素数次维元素数 ;或:类型类型类型类型 数组名数组名数组名数组名=new=new=new=new 类型类型类型类型 首维元素数首维元素数首维元素数首维元素数;数组名数组名数组名数组名 首维首元素首维首元素首维首元素首维首元素 new new new new 类型类型类型类型 次维元素数次维元素数次维元素数次维元素数 ;数组名数组名数组名数组名 首维次元素首维次元素首维次元素首维次元素 new new new new 类型类型类型类型 次维元素数次维元素数次维元素数次维元素数 ;public class TwoArray public static void main(String args)int b=11,21,22,31,32,33,34;int sum=0;System.out.println(b.length+,+b2.length);for(int i=0;ib.length;i+)for(int j=0;jbi.length;j+)sum+=bij;System.out.println(sum);命令行参数所谓命令行参数,是指执行某个Java应用程序时,从命令行中向程序直接传送的参数。public class CmdLineParameterpublic class CmdLineParameter public static void main(String args)public static void main(String args)if(args.length1)if(args.length1)System.out.println(need a parameter at System.out.println(need a parameter at least!);least!);System.exit(0);System.exit(0);for(int i=0;iargs.length;i+)for(int i=0;iargs.length;i+)System.out.println(parameter+i+is:System.out.println(parameter+i+is:+argsi);+argsi);小结n n各种基本数据类型都有其对应的数据类型类,主要用于数据类型的转换。n n数组可以用new和初始化的方法定义。在Java中二维数组每行元素数可以是不相等的。n nmain函数的命令行参数是一个字符串数组。练习与思考1.1.简述数据类型的常用方法。2.2.设计一个程序将一维数组中的元素倒置,若数组元素的顺序原来是1、2、3、4、5则倒置后顺充变为5、4、3、2、1。3.3.设定一批整数,使用选择法对其从小到大排序并输出。4.4.设定5行5列的二维数组,求其中主对角线上元素的和。