- 0
- 0
- 约8.71千字
- 约 22页
- 2026-03-02 发布于山东
- 举报
项目十一集合应用技术任务二使用集合统计班级成绩Java程序设计任务驱动教程
项目十一集合应用技术任务一使用集合保存录入的班级学生考试成绩任务二使用集合统计班级成绩任务三使用集合实现成绩从高到低排序
任务要求期中考试结束了,老师让小明统计全班数学成绩的最高分、最低分和平均分,小明计划编写程序,将学生成绩(学号、姓名、成绩)以Student类对象的形式存储在List接口中,通过遍历List接口计算最高分、最低分和平均分。成绩单和计算结果如下。
1.集合迭代4集合的迭代操作是指将集合中的元素逐个遍历取出。在实际开发中,除使用for循环遍历集合外,Java中迭代集合的常用方式还有两种使用foreach循环使用iterator接口。
2.foreach循环和泛型foreach循环和泛型(generics)均在JDK5中引入。(1)foreach循环也称为增强型for循环,主要用于遍历数组或集合中的元素,它使得遍历出的集合元素更加简洁和易读。foreach循环允许在循环体内直接访问数组或集合中的每个元素。foreach循环语法格式如下。for(容器中元素类型临时变量:容器变量){循环体;}语法说明:容器中元素类型:指定了数组或集合中元素的类型,临时变量:用于临时存储当前遍历到的元素的变量,容器变量:要遍历的数组或集合对象。
2.foreach循环示例示例:使用foreach循环遍历ArrayList类对象注意:示例:使用foreach循环遍历数组使用foreach循环遍历集合时,不能使用集合自带的方法改变集合的元素,如运行右边的删除集合元素的代码将会引发异常//使用foreach循环遍历集合中的元素,List集合默认取出的是Object类对象for(Objectitem:list){System.out.println(item);//下面的代码会抛出ConcurrentModificationException异常,在使用foreach循环遍历时不允许修改集合list.remove(item);}
2.泛型(2)泛型Java中引入泛型的主要原因是为了增强类型安全,并减少代码冗余。泛型允许程序员在定义类、接口和方法时使用类型参数,使得代码更加灵活和可重用。示例:下面例子是否有错误?由于输入错误,输入了字符串“3”,导致出现类型转换异常:“java.lang.Stringcannotbecasttojava.lang.Integer”ArrayListintList=newArrayList();intList.add(1);intList.add(2);intList.add(3);//代码错误,应该是数字3intsum=0;for(Objectobj:intList){//intList集合默认取出的是Object类对象sum+=(Integer)obj;}
2.泛型如何解决这个问题呢?使用泛型定义泛型时类型形参由一对角括号()括在中间,调用泛型时需要将类型实参写在角括号内。修正后的例子ArrayListIntegerintList=newArrayListInteger();intList.add(1);intList.add(2);intList.add(3);//使用泛型后此处如果是intList.add(3)则会产生编译异常intsum=0;for(Integerobj:intList){//集合中的每个元素类型都是Integer对象sum+=(Integer)obj;//Java自动将obj转换为int类型数据}
3.基本数据类型和它们对应的包装类(wrapperclass)之间的转换概念:基本数据类型为int、float、double;包装类是基本数据类型的对象封装(如Integer、Float、Double等)。基本数据类型和包装类之间的转换包含自动装箱(autoboxing)和自动拆箱(unboxing)。(1)基本数据类型到包装类的转换(自动装箱):intintValue1=10;//Java会自动将基本数据类型值转换为其对应的包装类对象IntegerIntegerwrappedInt=intValue1;(2)包装类到基本数据类型的转换(自动拆箱):intsum=0;//Integer对象和int类型数值相加时,Java会进行自动拆箱操作,将Intege
您可能关注的文档
- MySQL数据库原理及应用课件 项目3 创建与维护MySQL数据库.pptx
- MySQL数据库原理及应用课件 项目4 创建与维护学生信息管理数据表.pptx
- MySQL数据库原理及应用课件 项目6 优化查询学生信息管理数据库.pptx
- MySQL数据库原理及应用课件 项目7 以程序方式处理学生信息管理数据表.pptx
- MySQL数据库原理及应用课件 项目8 维护学生信息管理数据库的安全性.pptx
- Java程序设计任务驱动教程课件 项目1 任务1 Java开发环境配置.pptx
- Java程序设计任务驱动教程课件 项目1 任务2 编写第一个Java程序.pptx
- Java程序设计任务驱动教程课件 项目2 任务1 使用集成开发工具开发 Java 程序.pptx
- Java程序设计任务驱动教程课件 项目3 任务1 计算圆的面积 — Java基本语法的使用1.pptx
- Java程序设计任务驱动教程课件 项目3 任务1 计算圆的面积 — Java基本语法的使用2.pptx
最近下载
- 《羊肚菌林下生产技术规程》(征求意见稿).pdf
- 机械基础-全套PPT课件.pptx
- 党支部班子2026年在对照加强理论武装、加强党员管理监督、严格组织生活等六个对照方面检查材料【两篇范文】.docx VIP
- 4.2.2 被减数中间、末尾有0的连续退位减法及验算 课件人教版数学二年级下册.pptx
- 党支部班子2026年在对照加强理论武装、执行上级组织决定、加强党员管理监督等“六个对照”方面检查材料.docx VIP
- 2026年(完整版)党建应知应会基础知识测试题及一套答案.docx VIP
- 《计算机网络集成技术》课程标准.doc VIP
- 《骆驼祥子》圈点、批注、做笔记(教学设计)七年级语文下册(统编版2024).pdf VIP
- 2025年贵州省遵义市遵义县某国企招聘笔试题库及参考答案详解1套.docx VIP
- 2025年卫健委遴选笔试真题汇编解析版,备考冲刺押题必备.docx VIP
原创力文档

文档评论(0)