欢迎来到天天文库
浏览记录
ID:27865355
大小:1.14 MB
页数:98页
时间:2018-12-04
《[计算机软件及应用]4、数组、字符串、向量和哈希表》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第四章数组、字符串、向量和哈希表浙江工业大学陆佳炜Email:viivan@zjut.edu.cn手机:60013777802052QQ:3636500431数组数组的应用字符串String可变字符序列StringBuffer本章内容:回顾关键词:封装性、继承性、多态性、abstract、static、final、接口、包、内部类24.1数组数组是相同类型的数据元素按顺序组成的一种复合数据类型,元素在数组中的相对位置由下标来指明。例如:publicstaticvoidmain(Stringargs[])其中a
2、rgs是String类型的数组占用连续的内存地址数组的静态性一旦创建就不能修改数组的长度3数组声明一维数组变量的声明格式有如下两种:(1)数组元素的数据类型[]变量名;(2)数组元素的数据类型变量名[];示例:int[]c;String[]names;intc[];Stringnames[];4数组的实例化Java数组实际上也是对象,所以可通过new关键字来创建。示例:int[]c;//声明,不必指定数组的大小c=newint[12];//创建对象,并分配内存上面的两个语句可以简化成一个语句:int[]c=n
3、ewint[12];数组的长度用数组名.length,如c.length数组元素用数组名[下标]表示,下标的范围是0~数组长度-1,如c[0]5初始化数组基本数据类型的元素初始化为0值或false非基本数据类型的元素初始化为null可以采用循环结构初始化数组示例:double[]squares;squares=newdouble[100];for(inti=0;i4、int[]n={10,20,30,40,50};上面语句创建了一个含有五个元素的数组下标值分别为0,1,2,3,4这时不需要运算符new7数组的内存分配示例8数组的注意事项当通过循环遍历数组时下标永远不要低于0下标永远要比数组元素个数小当数组下标出错,Java产生ArrayIndexOutOfBoundsException异常数组一旦创建后,不能调整大小可使用相同的引用变量来引用一个全新的数组int[]a=newint[6];a=newint[10];9多维数组最常用的多维数组是二维数组int[][]a=ne5、wint[3][4];二维数组可以理解成如下图示的表格a[0][0]a[1][0]a[2][0]a[0][1]a[1][1]a[2][1]a[0][2]a[1][2]a[2][2]a[0][3]a[1][3]a[2][3]行的下标值列的下标值10二维数组的创建(内存分配)(1)直接为每一维分配空间,如:inta[][]=newint[2][3];该语句创建了一个二维数组a,其较高一维含两个元素,每个元素为由3个整型数构成的整型数组。此时该数组的元素为:a[0][0]a[0][1]a[0][2]a[1][0]a6、[1][1]a[1][2]11二维数组的创建(内存分配)(2)从最高维开始,分别为每一维分配空间二维数组的实际上是数组的数组,即创建以数组为元素的数组,意味着:二维数组的每一行可以具有不同的列数,如:intb[][]=newint[2][];//最高维含2个元素,每个元素为一个整型数组b[0]=newint[3];b[1]=newint[5];此时该数组的元素为:b[0][0]b[0][1]b[0][2]b[1][0]b[1][1]b[1][2]b[1][3]b[1][4]12二维数组元素的初始化(1)先创建7、二维数组,然后通过循环直接对每个元素进行赋值,如:int[][]matrix=newint[4][5];for(introw=0;row8、nta[][]={{2,3},{1,5},{3,4}};声明了一个3×2的数组,并对每个元素赋值,即:a[0][0]=2a[0][1]=3a[1][0]=1a[1][1]=5a[2][0]=3a[2][1]=414例:构造杨辉三角形classYanghui{publicstaticvoidmain(String[]args){intyanghui[][]={{1},{1,1},{1,2,1},{1,
4、int[]n={10,20,30,40,50};上面语句创建了一个含有五个元素的数组下标值分别为0,1,2,3,4这时不需要运算符new7数组的内存分配示例8数组的注意事项当通过循环遍历数组时下标永远不要低于0下标永远要比数组元素个数小当数组下标出错,Java产生ArrayIndexOutOfBoundsException异常数组一旦创建后,不能调整大小可使用相同的引用变量来引用一个全新的数组int[]a=newint[6];a=newint[10];9多维数组最常用的多维数组是二维数组int[][]a=ne
5、wint[3][4];二维数组可以理解成如下图示的表格a[0][0]a[1][0]a[2][0]a[0][1]a[1][1]a[2][1]a[0][2]a[1][2]a[2][2]a[0][3]a[1][3]a[2][3]行的下标值列的下标值10二维数组的创建(内存分配)(1)直接为每一维分配空间,如:inta[][]=newint[2][3];该语句创建了一个二维数组a,其较高一维含两个元素,每个元素为由3个整型数构成的整型数组。此时该数组的元素为:a[0][0]a[0][1]a[0][2]a[1][0]a
6、[1][1]a[1][2]11二维数组的创建(内存分配)(2)从最高维开始,分别为每一维分配空间二维数组的实际上是数组的数组,即创建以数组为元素的数组,意味着:二维数组的每一行可以具有不同的列数,如:intb[][]=newint[2][];//最高维含2个元素,每个元素为一个整型数组b[0]=newint[3];b[1]=newint[5];此时该数组的元素为:b[0][0]b[0][1]b[0][2]b[1][0]b[1][1]b[1][2]b[1][3]b[1][4]12二维数组元素的初始化(1)先创建
7、二维数组,然后通过循环直接对每个元素进行赋值,如:int[][]matrix=newint[4][5];for(introw=0;row8、nta[][]={{2,3},{1,5},{3,4}};声明了一个3×2的数组,并对每个元素赋值,即:a[0][0]=2a[0][1]=3a[1][0]=1a[1][1]=5a[2][0]=3a[2][1]=414例:构造杨辉三角形classYanghui{publicstaticvoidmain(String[]args){intyanghui[][]={{1},{1,1},{1,2,1},{1,
8、nta[][]={{2,3},{1,5},{3,4}};声明了一个3×2的数组,并对每个元素赋值,即:a[0][0]=2a[0][1]=3a[1][0]=1a[1][1]=5a[2][0]=3a[2][1]=414例:构造杨辉三角形classYanghui{publicstaticvoidmain(String[]args){intyanghui[][]={{1},{1,1},{1,2,1},{1,
此文档下载收益归作者所有