javase编程基础-04new

javase编程基础-04new

ID:34412354

大小:4.05 MB

页数:47页

时间:2019-03-05

javase编程基础-04new_第1页
javase编程基础-04new_第2页
javase编程基础-04new_第3页
javase编程基础-04new_第4页
javase编程基础-04new_第5页
资源描述:

《javase编程基础-04new》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、第第44章章流流程控制与数组程控制与数组E-Mail:sevenwin@163.com主讲:高智震本章目标什么是数组数组的定义与初始化数组作为引用类型的运行机制多维数组与数组相关的工具类程序结构中的顺序结构分支语句:ifswitch循环语句:forwhiledo...while循环的嵌套与控制数组与流程控制的应用9/24/20142E-Mail:sevenwin@163.com主讲:高智震数组10-1什么是数组?数组是在程序设计中,为了处理方便,把具有相同类型的若干变量有序的组织起

2、来的一种形式。这些按序排列的同类数据元素的集合称为数组。为什么用数组?例如,现在班级有100名同学,要给每一位同学的名字建立一个字符串变量保存在程序中,是不是意味着要建100个字符串变量呢?数组是一种引用类型变量,必需初始化才能使用。因此当定义一个数组的时候,实际上仅仅声明了一个地址指针,并且这个指针没有指向任何有效的内存空间。字符串是一种特殊的字符数组。9/24/20143E-Mail:sevenwin@163.com主讲:高智震数组10-2声明数组数据类型[]数组名;//推荐使用这一种,直

3、观。数据类型数组名[];//旧写法,很少有人用了。数组的初始化数组名=new类型[]{元素1,元素2,……};//静态初始化。数组名=new类型[长度];//动态初始化。也可以声明与赋值合二为一int[]i=newint[]{25,33,57,83};String[]sTr=newString[4];int[]s=newint[4]{12,22,32,42};//错误,Java不支持这种语法。String[]sTtr=newString[]{"赵","钱",54};//元素数据类型错误。9/24/20

4、144E-Mail:sevenwin@163.com主讲:高智震数组10-3数组执行动态初始化时,元素的初始值分配:整型(byte、short、int、long)初始值为0;浮点型(float、double)初始值为0.0;字符型(char)初始值为'u0000';布尔型(boolean)初始值为false;引用类型(类、接口、数组)其初始值为null;9/24/20145E-Mail:sevenwin@163.com主讲:高智震数组10-4数组最常用的方法就是访问数组元素。访问数组元素

5、的方法:•数组名[序列号];//序列号从0开始。数组的length属性,标识数组元素的个数,即数组长度。•数组名.length;//元素最大序列号等于length-1。int[]i=newint[]{25,33,57,83};//圆中数字为序列号。inta=i[1];//a=33,数组i中的第2个元素的值。intb=i.length;//b=4,数组i一共包含4个元素。如访问数组元素时指定的索引值越界,即数组元素的序列号小于0或者大于等于length值;在编译时不会得到提示,但在运行时会报错:

6、•java.lang.ArrayIndexOutOfBoundsException(数组索引越界异常)。9/24/20146E-Mail:sevenwin@163.com主讲:高智震数组10-5数组在内存中的运行机制。int[]i=newint[]{25,33,57,83};int[]j=newint[3];j=i;9/24/20147E-Mail:sevenwin@163.com主讲:高智震数组10-6基本数据类型数组初始化时在内存中的运行机制。对于基本类型的数组而言,初始化数组时,先在堆内存中依

7、次为每个数组元素分配存储空间,再直接将数组元素的值存入对应的数组元素中。int[]i;㈠i=newint[4];㈡i[2]=50;㈢9/24/20148E-Mail:sevenwin@163.com主讲:高智震数组10-7引用类型数组初始化时在内存中的运行机制。引用类型数组元素中存储的是指向有效数据的地址,也就是说引用类型数组元素中存储的还是内存地址。cat[]m=newcat[2];㈠//cat为一个类(class)catmimi=newcat("咪咪",10);㈡//new一个新对象,并赋初值。c

8、atpipi=newcat("皮皮",12);㈡m[0]=mimi;㈢m[1]=pipi;㈢9/24/20149E-Mail:sevenwin@163.com主讲:高智震数组10-8多维数组从数据底层来看,在Java语言中并不存在多维数组。int[][]a=newint[2][];a[0]=newint[4];a[1]=newint[3];a[0][2]=15;/*二维数组其实就是一维数组,只不过它的元素也是一维数组;那么

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。