- 1、本文档共13页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
使用二维数组
《Java程序设计》
教师凌宁
本讲的学习目标
什么是面向对象?
要存储一个学生5门课程的成绩可以声明一个长度为5的浮点型数组来存储,但是,当要存储的是4个这样的学生的成绩时,就可以使用二维数组来实现。二维数组在程序中也经常使用,它可以看作一个特殊的一维数组,即数组中的每一个元素本身又是一个数组。
例如,存储4个学生6门课程的成绩,原来的做法是:
float[]score1={70,86,72,98,78};
float[]score2={80,82,79,91,88};
float[]score3={95,85,80,95,82};
float[]score4={90.5,88,87,90,85};
使用二维数组后,可以定义成:
float[][]score={{70,86,72,98,78},{80,82,79,91,88},{95,85,80,95,82},{90.5,88,87,90,85}};
方式1:float[][]arr1=newfloat[4][5];
二维数组的定义有以下三种方式:
方式2:int[][]arr2=newint[3][];
arr[0]=newint[3];
arr[1]=newint[2];
arr[2]=newint[5];
方式3:int[][]arr3={{2,4},{5,8,9,10},{20,30,18}};
什么是面向对象?
遍历二维数组需要使用二重循环,外层循环用于控制行数,内层循环控制列数。可以使用for循环遍历,也可以使用foreach循环遍历。
【示例】使用for循环遍历二维数组赋值。
publicstaticvoidmain(String[]args){
Scannersc=newScanner(System.in);
float[][]prices=newfloat[3][4];//定义一个3行4列的浮点型数组
for(inti=0;iprices.length;i++){//遍历外层一维数组
System.out.println(第+(i+1)+位学生成绩录入:);
for(intj=0;jprices[i].length;j++){//遍历内层数组元素
System.out.print(第+(j+1)+门课程成绩:);
prices[i][j]=sc.nextFloat();//从控制台依次输入成绩
}
System.out.print(\n);
}
System.out.println(录入完毕!);
}
}
【示例】使用foreach循环遍历二维数组输出。
publicstaticvoidmain(String[]args){
int[][]prices={{35,56,78},{80,82,99,91,88},{95,90,95,82}};
for(int[]row:prices){//外层循环遍历行
for(intcol:row){//内层循环遍历列
System.out.print(col+\t);
}
System.out.println();//换行
}
}
脚下留心!
for循环遍历数组时,要使用数组长度length,不能使用固定长度值。
foreach不能用于遍历数组元素赋值,只能遍历输出数组元素。
foreach是for的一个遍历元素增强版,并不能完全取代for,能用foreach的地方就能用for,反之不行。
什么是面向对象?
利用二维数组输入多名学生多门课程的成绩,再求每个学生的平均成绩。
【示例】输入多名学生多门课程的成绩,再求每个学生的平均成绩。
小结
1.定义二维数组
2.遍历二维数组
3.二维数组的应用
感谢观映!
谢谢
您可能关注的文档
- 《Java程序设计任务式教程》课件 405-break循环中断.pptx
- 《Java程序设计任务式教程》课件 406-continue循环中断.pptx
- 《Java程序设计任务式教程》课件 501 创建数组.pptx
- 《Java程序设计任务式教程》课件 502 遍历数组.pptx
- 《Java程序设计任务式教程》课件 503 数组的常见操作.pptx
- 《Java程序设计任务式教程》课件 504 01冒泡算法.pptx
- 《Java程序设计任务式教程》课件 505 方法的定义与调用.pptx
- 《Java程序设计任务式教程》课件 506 创建带参数的方法.pptx
- 《Java程序设计任务式教程》课件 507 方法的重载.pptx
- 《Java程序设计任务式教程》课件 508 变量的作用域.pptx
文档评论(0)