《联想培训课件java数组.pptx》由会员分享,可在线阅读,更多相关《联想培训课件java数组.pptx(18页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.1JAVA 数数 组组 2013年年9月月4日日2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.2目标目标目标目标 掌握一维数组的定义和使用掌握一维数组的定义和使用掌握一维数组的定义和使用掌握一维数组的定义和使用 掌握二维数组的定义和使用掌握二维数组的定义和使用掌握二维数组的定义和使用掌握二维数组的定义和使用 2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.3 1 数组的含义 数组是一种数据结构,是一组具有相同数组是一种数
2、据结构,是一组具有相同类型的数据的集合。类型的数据的集合。通过数组名加数组下标来使用数组中的通过数组名加数组下标来使用数组中的数据。数据。2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.41 数组中的几个概念数组的名称:数组有一个名字。数组的名称:数组有一个名字。数组的类型:数组中所有的数据具有相同的类型,可数组的类型:数组中所有的数据具有相同的类型,可以为以为Java中任意的数据类型。中任意的数据类型。数组的元素:数组中的一个数据,称为一个元素。数组的元素:数组中的一个数据,称为一个元素。数组的索引:元素的序号,第一个元素索引从数组的索引:元素的序号
3、,第一个元素索引从0开始。开始。数组的长度:整个数组的元素个数。数组的长度:整个数组的元素个数。2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.51.1 一维数组的声明格式:格式:数组元素类型数组元素类型 数组名字数组名字 ;或或 数组元素类型数组元素类型 数组名字;数组名字;数组元素类型可为数组元素类型可为Java中的任何数据类型。中的任何数据类型。数组名,必须符合标识符定义规则。数组名,必须符合标识符定义规则。int student;int student;2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.6
4、1.2 一维数组的创建使用使用new分配内存空间,并按照数组的类型,为每一个数分配内存空间,并按照数组的类型,为每一个数组元素建立默认值。组元素建立默认值。格式:数组名字格式:数组名字=new 数组元素的类型数组元素的类型数组元素的个数数组元素的个数;int student;student=new int10;或或 int student=new int10;2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.71.3 一维数组的初始化静态初始化静态初始化 元素数目较少时,定义数组的同时对数组元素数目较少时,定义数组的同时对数组元素进行赋值。元素进行赋值。
5、例:例:int array=10,20,30,40,50;注意:是用花括号括起来。注意:是用花括号括起来。2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.8动态初始化动态初始化 用用new操作符为数组分配空间。操作符为数组分配空间。例:例:float farray;farray=new float3;farray0=2.3;farray1=4.6;farray2=6.9;2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.9一维数组的使用 int a=5,8,2,4,1,9,78;int min=num0;for(
6、int i=1;inumi)min=numi;什么功能?2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.10对数组中的每个元素赋值,然后按逆序输出对数组中的每个元素赋值,然后按逆序输出。int i;int a=new int5;for(int i=0;i=0;i-)System.out.println(“a”+i+”=”+ai);2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.112.1 二维数组的定义 定义格式为:定义格式为:数组类型数组类型 数组名数组名;或或 数组类型数组类型 数组名;数组名;或或 数组类
7、型数组类型 数组名数组名;int array_name ;或或 int array_name;或或 int array_name;2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.122.2 二维数组的初始化(1)直接为每一维分配空间,例如:直接为每一维分配空间,例如:int a=new int32;(2)高高维维开开始始,分分别别为为每每一一维维分分配配空空间间,例例如如:int a =new int3;a0=new int2;a1=new int3;a2=new int4;(3)数组常量初始化,例如:)数组常量初始化,例如:int a=1,2,3,4
8、,5,6;2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.132.3 二维数组的引用 引用格式为:引用格式为:数组名数组名下标下标2 下标下标1;下下标标1,下下标标2分分为为二二维维数数组组的的第第一一、二二维维下下标标,同同一一维维数数组组一一样样,也也可可为为整整型型常常量量和和表表达达式式,并并且且数数组组下下标标都都从从0开始。开始。2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.142.4 二维数组的访问 double buffer=new double54;for(int i=0;ibuffer.
9、length;i+)for(int j=0;jbuffer0.length;j+)System.out.print(bufferij);2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.153.1 锯齿数组矩阵数组:矩阵数组:二维数组每一行的长度都是相同的,数二维数组每一行的长度都是相同的,数组构成一个组构成一个m行行n列的矩阵。列的矩阵。锯齿数组:锯齿数组:每一行的长度可以不同,可长可短。每一行的长度可以不同,可长可短。2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.163.2 锯齿数组的创建double bu
10、ffer=new double4;buffer0=new double2;buffer1=new double3;buffer2=new double2;buffer3=new double1;2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.17练习需求:随机获取一串指定长度的小写字母字符串要求:使用数据定义一个字符数组提示:获取一个0-27的随机数作为数组下标2013 LENOVO CONFIDENTIAL.ALL RIGHTS RESERVED.18参考代码/*需求:获取一段 指定长度的小写字母字符串*param count 字符串长度字符串长度*
11、return*/public static String getRandomCharString(int count)char alphaArray=a,b,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z;String randomSequence=;for(int i=0;i count;i+)Character c=Character.valueOf(alphaArraynew Random().nextInt(alphaArray.length);randomSequence=randomSequence+c.toString();return randomSequence;