Java04数组字符串.ppt





《Java04数组字符串.ppt》由会员分享,可在线阅读,更多相关《Java04数组字符串.ppt(31页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Java技术与应用Java的数组字符串的数组字符串(第第4章章)西安交大西安交大 卫颜俊卫颜俊 2009年年4月月电子信箱:电子信箱:QQ:610568018网站网站:2/311.数组数组(Array)3/31 数组是一种复合数据类型,代表一组同类型数组是一种复合数据类型,代表一组同类型的变量。的变量。数组是一种特殊的对象。数组是一种特殊的对象。从存储方式来看,数组所代表的变量按顺序连续存放,从存储方式来看,数组所代表的变量按顺序连续存放,数组本身使用一个标识符来定义,称为数组名。数组本身使用一个标识符来定义,称为数组名。所代表的每一个变量称为数组元素,数组元素在内存中所代表的每一个变量称为数
2、组元素,数组元素在内存中所处的位置称为下标。所处的位置称为下标。数组的长度是指数组中的元素个数。数组的长度是指数组中的元素个数。数组也遵守一般变量的先定义后使用的原则。数组也遵守一般变量的先定义后使用的原则。4/31数组举例记录一个班的记录一个班的10名同学的数学成绩名同学的数学成绩定义定义10个变量:个变量:float score1,score2,score10分别存放每个同分别存放每个同学的数学成绩学的数学成绩定义定义1个数组变量:个数组变量:score10其中,其中,score.length=10每个元素为:每个元素为:score0,score1,score8,score9数组为数组为s
3、corescorei(i=0,9)类型为类型为float5/31一维数组定义格式定义格式类型名类型名 数组名数组名=初值初值;或;或类型名类型名 数组名数组名=初值初值;举例:举例:int ai;/定义一个整数数组定义一个整数数组float score;/定义一个定义一个float数组数组float score;Object ao;/定义一个定义一个Object数组数组String names;/定义一个字符串数组定义一个字符串数组 byte rowvector,colvector,matrix;/分别定义两个字节数组和一个字节分别定义两个字节数组和一个字节数组的数组数组的数组 MyClass
4、amc;/定义一个带参数的对象数组定义一个带参数的对象数组6/31一维数组的初始化数组的定义中并不为数组元素分配内存数组的定义中并不为数组元素分配内存静态初始化静态初始化使用一对大括弧使用一对大括弧“”加数据来对数组进行初始化加数据来对数组进行初始化 举例:举例:int ai=1,2,3,4,5,6,7,8,9,10;/数组数组ai有有10个数组元素,即个数组元素,即ai.length为为10,每个,每个元素类型为元素类型为int char ac=n,o,t,a,S,t,r,i,n,g;/数组数组ac有有12个数组元素,即个数组元素,即ac.length为为12,每个元素类型为,每个元素类型为
5、char String countryNames=中国中国,美国美国,法国法国;/数组数组countryNames有有3个数组元素,即个数组元素,即countryNames.length为为3,每个元素类型为,每个元素类型为String MyClass amc=new MyClass(),new MyClass(),new MyClass();/数组数组amc有有3个数组元素,即个数组元素,即amc.length为为3,每个元素类型为,每个元素类型为MyClass Color colorPalette=Color.RED,Color.GREEN,Color.BLUE;/数组数组colorPal
6、ette有有3个数组元素,即个数组元素,即colorPalette.length为为3,每个元素类型为,每个元素类型为Color7/31一维数组的初始化(2)动态初始化动态初始化使用构造对象的方法(使用构造对象的方法(new运算符)来初始化数组运算符)来初始化数组举例:举例:int ai=new int10;/数组数组ai有有10个数组元素个数组元素int length=35;float score=new floatlength;/数组数组score有有35个数组元个数组元素素String countryNames=new String 中国中国,美国美国,法国法国;/数组数组country
7、Names有有3个个数组元素,即数组元素,即countryNames.length为为3,每个元素类型,每个元素类型为为String8/31一维数组的引用举例:举例:for(int i=0;i ai.length;i+)System.out.println(aii*aii);9/31一维数组的完整例子【例例4-1】模模拟拟体体育育比比赛赛中中的的胜胜、平平和和负负3种种状状态态10000次,统计并显示每种状态的次数。次,统计并显示每种状态的次数。(int)(Math.random()*10000)%3【例【例4-2】查找数组中是否存在某个数值。查找数组中是否存在某个数值。关键代码:关键代码:f
8、or(int x:arrayOfInts)10/31二维数组定义格式定义格式类型名类型名 数组名数组名=初值初值;或;或类型名类型名 数组名数组名=初值初值;或;或类型名类型名 数组名数组名=初值初值;举例:举例:int ai;int ai;int ai;11/31二维数组的初始化二维数组的定义中不为数组元素分配内存,分静态初始化和动态初始化举例:1:int ai1=new int33;2:int ai2=3:1,2,3,4,5,6,7,8,94:;5:int ai3=new int3;6:ai30=new int3;7:ai31=new int2;8:ai32=new int1;9:int
9、ai4=10:1,2,3,4,5,611:;12:int ai5=13:1,2,null,3,4,514:;12/31二维数组的引用举例:举例:for(int i=0;i ai4.length;i+)for(int j=0;j ai4i.length;j+)System.out.println(ai4ij*ai4ij);13/31二维数组的完整例子【例【例4-4】输出如下所示的杨辉三角形。】输出如下所示的杨辉三角形。三三角角形形中中的的每每一一行行除除最最左左和和最最右右为为1之之外外,中中间间的的每每一一行行每每一一列列的的值值=上上一一行行当当前前列列的的值值+上上一一行行前一列的值。前一
10、列的值。14/31数组与算法java.util.Arrays类类和和java.lang.System类类中中提提供供了了数数组组的的初初始始化化、拷贝、克隆、比较、查找与排序等方法。拷贝、克隆、比较、查找与排序等方法。1.初始化方法:初始化方法:System.fill(a,val);其中,其中,a为要初始化的数组,为要初始化的数组,val为初始化值。为初始化值。2.拷贝方法:拷贝方法:Arrays.arraycopy(src,srcPos,dest,destPos,length);其中,其中,src为原始数组,为原始数组,srcPos为原始数组起始下标,为原始数组起始下标,dest为目标数组,
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java04 数组 字符串

限制150内