Day_11【集合】扩展案例1_遍历打印学生信息,获取学生成绩的最高分,获取成绩最高的学员,获取学生成绩的平均值,获取不及格的学员数量
分析以下需求,并用代码实现:
1.按照以下描述完成类的定义
学生类
属性:
姓名name
年龄age
成绩score
行为:
吃饭eat()
study(String content)(content:表示学习的内容)
2.定义学生工具StudentsTool,有四个方法,描述如下
public void listStudents(Student[] arr):遍历打印学生信息
public int getMaxScore(Student[] arr):获取学生成绩的最高分
public Student getMaxStudent(Student[] arr):获取成绩最高的学员
public int getAverageScore(Student[] arr):获取学生成绩的平均值
public int getCount(Student[] arr):获取不及格的学员数量 3.定义测试类TestStudentTool
在main方法中首先创建长度为5的Student数组并初始化数据
再创建StudentsTool类的对象,并调用以上方法
package com.itheima;
public class Student {
//定义学生类属性
private String name;
private int age;
private int score;
public Student() {
super();
// TODO Auto-generated constructor stub
}
public Student(String name, int age, int score) {
super();
this.name = name;
this.age = age;
this.score = score;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getScore() {
return score;
}
public void setScore(int score) {
this.score = score;
}
public static void eat() {}
public static void study(String content) {}
}
package com.itheima;
public class StudentTool {
// public void listStudents(Student[] arr):遍历打印学生信息
public void listStudents(Student[] arr) {
for (int x = 0; x < arr.length; x++) {
Student s = arr[x];
System.out.println(s.getName() + "---" + s.getAge() + "---" + s.getScore());
}
}
// public Student getMaxStudent(Student[] arr):获取成绩最高的学员
public Student getMaxStudent(Student[] arr) {
Student s = arr[0];
for (int x = 1; x < arr.length; x++) {
if (arr[x].getScore() > s.getScore()) {
s = arr[x];
}
}
return s;
}
// public int getMaxScore(Student[] arr):获取学生成绩的最高分
public int getMaxScore(Student[] arr) {
Student s = getMaxStudent(arr);
return s.getScore();
}
// public int getAverageScore(Student[] arr):获取学生成绩的平均值
public int getAverageScore(Student[] arr) {
// 先定义一个总值变量
int sum = 0;
for (int x = 0; x < arr.length; x++) {
Student s = arr[x];
sum += s.getScore();
}
return sum / arr.length;
}
// public int getCount(Student[] arr):获取不及格的学员数量
public int getCount(Student[] arr){
int count = 0;
for(int x = 0;x < arr.length;x++) {
Student s = arr[x];
if(s.getScore() < 60) {
count++;
}
}
return count;
}
}
package com.itheima;
public class TestStudentTool {
public static void main(String[] args) {
//创建Student对象
Student s1 = new Student("马化腾",19,70);
Student s2 = new Student("求伯君",21,90);
Student s3 = new Student("雷军",20,80);
Student s4 = new Student("马云",19,40);
Student s5 = new Student("刘强东",19,30);
//创建长度为5的Student数组
Student[] arr = {s1,s2,s3,s4,s5};
//创建StudentTool的对象
StudentTool st = new StudentTool();
//遍历打印学生信息
st.listStudents(arr);
//获取学生成绩的最高分
System.out.println("几位学生中成绩最高分为:"+st.getMaxScore(arr));
//获取成绩最高的学生姓名
Student s = st.getMaxStudent(arr);
System.out.println("成绩最高的学生为:"+s.getName());
//获取学生成绩的平均值
System.out.println("学生的平均成绩为:"+st.getAverageScore(arr));
//获取不及格的学员数量
System.out.println("不及格的学生数量为:"+st.getCount(arr));
}
}
控制台输出内容

Day_11【集合】扩展案例1_遍历打印学生信息,获取学生成绩的最高分,获取成绩最高的学员,获取学生成绩的平均值,获取不及格的学员数量的更多相关文章
- java开发学生信息管理系统的实现(简洁易懂),适合计算机专业学生参考,课程设计、毕业论文设计参考等
编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************** ...
- Day_12【集合】扩展案例1_利用集合的知识对长度为10的int数组进行去重,产生新数组,不能改变数组中原来数字的大小顺序
分析以下需求,并用代码实现 1.定义一个长度为10的int数组,并存入10个int类型的数据,其中有一些数据是重复的 2.利用集合的知识对数组进行去重,产生新数组,不能改变数组中原来数字的大小顺序 3 ...
- Day_14【IO流】扩展案例1_缓冲区字符输入、输出流,键盘录入,contains()方法的统一运用
分析以下需求,并用代码实现 实现一个验证码小程序,要求如下: 1. 在项目根目录下新建一个文件:data.txt,键盘录入3个字符串验证码,并存入data.txt中,要求一个验证码占一行: 2. 键盘 ...
- Day_13【IO流】扩展案例1_读取项目文件内容并去重
分析以下需求,并用代码实现: 需求: 读取当前项目下的info1.txt 文件内容如下 : aaaaaaaaaaabbbbbbbbbbbbccdefg 要求将数据去重后写回最终效果 : fgdebca ...
- Day_09【常用API】扩展案例1_程序中使用一个长度为3的对象数组,存储用户的登录名和密码……
需求说明:实现用户注册.登陆功能: 1.程序中使用一个长度为3的**对象数组**,存储用户的登录名和密码: 例如如下格式: 登录名 密码 生日 爱好 zhangsan 1111 1998-03-15 ...
- Day_08【面向对象】扩展案例1_测试项目经理类和程序员类
分析以下需求,并用代码实现: 1.定义项目经理类 属性: 姓名 工号 工资 奖金 行为: 工作work 2.定义程序员类 属性: 姓名 工号 工资 行为: 工作work 要求: 向上抽取一个父类,让这 ...
- Day_10【常用API】扩展案例1_利用人出生日期到当前日期所经过的毫秒值计算出这个人活了多少天
分析以下需求,并用代码实现: 1.从键盘录入一个日期字符串,格式为 xxxx-xx-xx,代表该人的出生日期 2.利用人出生日期到当前日期所经过的毫秒值计算出这个人活了多少天 package com. ...
- 面向对象案例 - 学生信息管理系统V1.0
学生管理系统项目[所有知识点整合] 1. 学生管理系统项目 尝试完成以下功能 实体类: 学生类: id, 姓名,年龄,性别,成绩 需要使用数组保存学生信息 Student[] allStu 需要完成的 ...
- 利用Java集合实现学生信息的”增删查“
之前学了Java中的集合,打算写一个小程序来消化一下! 那么我们知道,集合相比数组的优点就是可以动态的增加元素,这对比数组来说,十分的便捷: 并且集合为我们封装好一些方法,可以更好的做一些数据操作! ...
随机推荐
- Python-selenium 元素定位
1.id定位find_element_by_id() 通过id属性定位元素,如果id是动态变化的话不能用id来进行定位 2.name定位find_element_by_name() 通过name属性定 ...
- JMeter分布式压测-常见问题之(Server failed to start: java.rmi.server.ExportException: Listen failed on port: 0; nested exception )
问题描述: 在Linux环境启动jmeter-server时抛出了如下异常: 问题描述: 1.可能监听的端口被占用,修改端口号2.Server相关的rmi配置需要调整 解决方案: 在目录/apache ...
- react-i8n
1. 在项目中安装 npm install react-intl --save 2.兼容Safari各个版本需要安装intl npm install intl --save 3.编写语言包 1.)新建 ...
- Golang Map实现(一)
本文学习 Golang 的 Map 数据结构,以及map buckets 的数据组织结构. hash 表是什么 从大学的课本里面,我们学到:hash 表其实就是将key 通过hash算法映射到数组的某 ...
- MySQL server has gone away(在执行sql的时候,莫名的报错)
原文:https://cenalulu.github.io/mysql/mysql-has-gone-away/ MySQL Server has gone away报错原因汇总分析 原因1. MyS ...
- tp5--开发规范
在日常开发的过程中,写代码都要有一定的规范,不然可读取就太差了,所以为了以后的维护.对接,好的代码规定是必须的. 以下是我自己对自己提出的要求: 全部: 1) 每个方法都要写好备注(@retrun作 ...
- thinkphp5--model数据操作的坑
最近用thinkphp5开发,经常用到model了来操作数据,但是操作多了,就发现他的坑了. 就好像如果你只是初始化一个model对象,但是你却用这个对象进行多次的数据操作,这时候他的数据就会发生混乱 ...
- 通过纯css实现图片居中的多种实现方式
html结构: <div class="demo" style="width: 800px;height: 600px; border:1px solid #ddd ...
- 去掉input阴影&隐藏滚动条&抛异常&预加载&curl传json
1.隐藏滚动条:-webkit-scrollbar{ display:none; } 2.array_walk():数组里的每个元素执行一个自定义函数: array_map():数组里的每个元素执行一 ...
- T-SQL字符串函数
整理下MSSQL中有关时间的函数,博客记录之. ASCII 原型:ASCII ( character_expression ) 返回值:int 类型值 功能:返回输入字符串最左边的一个字符的ASCII ...