《Java课件第03讲JAVA数组.ppt》由会员分享,可在线阅读,更多相关《Java课件第03讲JAVA数组.ppt(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Java数组数组Java集合类集合类数组Collection接口Map接口Iterator接口1/28/20232数组数组数组是由数量固定的相同数据类型组成的容器数数组组属属引引用用类类型型,数组型数据是对象(object),数组中的每个元素相当于该对象的成员变量数组中的元素可以是任何数据类型,包括基本类型和引用类型JAVA 中可以用变量定义数组大小,即在运行时确定数组大小 1/28/20233数组的声明数组的声明type arrayName;type arrayName;类型(type)可以为Java中任意的数据类型,包括简单类型和复合类型。例如:int intArray;Date date
2、Array;Java语言中声明数组时不能指定其长度(数组中元素的个数),例如:int a5;/非法1/28/20234创建数组创建数组静静态态初初始始化化在定义数组的同时就为数组元素分配空间并赋值。int intArray=1,2,3,4;String stringArray=aaa,bbb,ccc;1/28/20235创建数组创建数组动态初始化数组定义与为数组元素分配空间并赋值的操作分开进行。int a;int b=3;a =new intb;a0=3;a1=9;a2=8;1/28/20236数组数组初始化初始化数组是引用类型,它的元素相当于类的成员变量,因此数组一经分配空间,其中的每个元素
3、也被按照成员变量同样的方式被默认初始化。数据类型默认值数值型0布尔型false字符型值为0的字符对象null1/28/20237数组的使用数组的使用创建数组后,才可以引用数组中的每个元素;数组元素的引用方式:arrayNameindex index为数组元素下标,可以是整型常量或整型表达式。如a3,bi,c6*i;数组元素下标从0开始;长度为n的数组合法下标取值范围:0 n-1;每个数组都有一个属性length获取它的长度,例如:a.length 指明数组a的长度(元素个数);1/28/20238引用数据类型的数组示例引用数据类型的数组示例 public class ArrayTest pub
4、lic static void main(String args)Employee m;m=new Employee10;m0=new Employee(Steve,2000,2004,1,1);m1=new Employee(Mary,3000,2004,5,1);for(int i=0;m.lenth;i+)System.out.println(mi);class Employee1/28/20239引用数据类型的数组示例引用数据类型的数组示例main栈m*Employee对象*nullnullnullnullnullnullnullnull堆Steve2000Mary30001/28/2
5、02310数组排序数组排序对数组中的元素排序,可以采用Arrays类中的sort方法int a=new int10000;.Arrays.sorta;sort方法也可以对引用数据类型数组排序,前提是引用的类实现了Comparable接口1/28/202311数组拷贝数组拷贝可以把一个数组变量拷贝给另一个,这时两个变量引用同一个数组,如:int aa=1,2,3,4,5;int bb=aa;aabb123451/28/202312数组拷贝数组拷贝类的arraycopy()方法提供了数组元素复制功能:int source=1,2,3;int dest=5,6,7,8,9;/复制源数组中从下标0开始
6、的source.length个元素到/目的数组,从下标0的位置开始存储。System.arraycopy(source,0,dest,0,source.length);1/28/202313数组拷贝数组拷贝System.arraycopy(source,0,dest,0,source.length);sourcedest12356789sourcedest123123891/28/202314多维数组多维数组Java中多维数组被做为数组的数组处理Java中多维数组的声明和初始化应按从高维到低维的顺序进行如:int a =1,2,2,3,3,4,5;与int a =new int3;a0=1,2
7、a1=2,3a2=3,4,5;效果一样1/28/202315多维引用数据类型数组多维引用数据类型数组对二维复合数据类型的数组,必须首先为最高维分配引用空间,然后再顺次为低维分配空间。而且,必须为每个数组元素单独分配空间。String s =new String2;s0=new String2;/为最高维分配引用空间s1=new String2;/为最高维分配引用空间s00=new String(Good);/为每个数组元素单独分配空间s01=new String(Luck);/为每个数组元素单独分配空间s10=new String(to);/为每个数组元素单独分配空间s11=new Strin
8、g(You);/为每个数组元素单独分配空间1/28/202316命令行参数命令行参数在启动Java应用程序时可以一次性地向应用程序中传递0多个参数-命令行参数命令行参数使用格式:java ClassName lisa bily Mr Brown命令行参数被系统以String数组的方式传递给应用程序中的main方法,由参数args接收 public static void main(String args)1/28/202317命令行参数(例命令行参数(例:CmdParam)public class CmdParam public static void main(String args)for(int i=0;i args.length;i+)System.out.println(args+i+=+argsi);java CmdParam lisa bily Mr Brown/输出结果:args0=lisaargs1=bilyargs2=Mr Brown1/28/202318