分析以下需求,并用代码实现:

  •   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_遍历打印学生信息,获取学生成绩的最高分,获取成绩最高的学员,获取学生成绩的平均值,获取不及格的学员数量的更多相关文章

  1. java开发学生信息管理系统的实现(简洁易懂),适合计算机专业学生参考,课程设计、毕业论文设计参考等

    编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************** ...

  2. Day_12【集合】扩展案例1_利用集合的知识对长度为10的int数组进行去重,产生新数组,不能改变数组中原来数字的大小顺序

    分析以下需求,并用代码实现 1.定义一个长度为10的int数组,并存入10个int类型的数据,其中有一些数据是重复的 2.利用集合的知识对数组进行去重,产生新数组,不能改变数组中原来数字的大小顺序 3 ...

  3. Day_14【IO流】扩展案例1_缓冲区字符输入、输出流,键盘录入,contains()方法的统一运用

    分析以下需求,并用代码实现 实现一个验证码小程序,要求如下: 1. 在项目根目录下新建一个文件:data.txt,键盘录入3个字符串验证码,并存入data.txt中,要求一个验证码占一行: 2. 键盘 ...

  4. Day_13【IO流】扩展案例1_读取项目文件内容并去重

    分析以下需求,并用代码实现: 需求: 读取当前项目下的info1.txt 文件内容如下 : aaaaaaaaaaabbbbbbbbbbbbccdefg 要求将数据去重后写回最终效果 : fgdebca ...

  5. Day_09【常用API】扩展案例1_程序中使用一个长度为3的对象数组,存储用户的登录名和密码……

    需求说明:实现用户注册.登陆功能: 1.程序中使用一个长度为3的**对象数组**,存储用户的登录名和密码: 例如如下格式: 登录名 密码 生日 爱好 zhangsan 1111 1998-03-15 ...

  6. Day_08【面向对象】扩展案例1_测试项目经理类和程序员类

    分析以下需求,并用代码实现: 1.定义项目经理类 属性: 姓名 工号 工资 奖金 行为: 工作work 2.定义程序员类 属性: 姓名 工号 工资 行为: 工作work 要求: 向上抽取一个父类,让这 ...

  7. Day_10【常用API】扩展案例1_利用人出生日期到当前日期所经过的毫秒值计算出这个人活了多少天

    分析以下需求,并用代码实现: 1.从键盘录入一个日期字符串,格式为 xxxx-xx-xx,代表该人的出生日期 2.利用人出生日期到当前日期所经过的毫秒值计算出这个人活了多少天 package com. ...

  8. 面向对象案例 - 学生信息管理系统V1.0

    学生管理系统项目[所有知识点整合] 1. 学生管理系统项目 尝试完成以下功能 实体类: 学生类: id, 姓名,年龄,性别,成绩 需要使用数组保存学生信息 Student[] allStu 需要完成的 ...

  9. 利用Java集合实现学生信息的”增删查“

    之前学了Java中的集合,打算写一个小程序来消化一下! 那么我们知道,集合相比数组的优点就是可以动态的增加元素,这对比数组来说,十分的便捷: 并且集合为我们封装好一些方法,可以更好的做一些数据操作! ...

随机推荐

  1. Map使用foreach遍历方式,Map获取第一个键值

    List<Map<String, Object>> mapList = new ArrayList<>();  for (Map.Entry<String,O ...

  2. 自己写的一个HTML的小网页

    上次在上直播课的时候,教员提到了html这种标记语言.自己就在W3school上面学了一点点关于html的一些皮毛,自己动手写了一个小网页,同时自己对CTF这一块比较感兴趣,但是自己还是一个干干净净的 ...

  3. 5. class--extends

    ES5: function article(x,y){ this.x = x; this.y = y; } article.prototype.say = function() { return (t ...

  4. [linux] [nginx] 一键安装web环境全攻略phpstudy版,超详细!

    找到运行中的服务器(实例). 打开这个主要是看它的IP,是公网ip,公网ip,公网ip,重要的事情说三遍. 接下来我们可以不用在阿里云上操作了,直接用客户端操作,这两个客户端就是Xshell 5和Xf ...

  5. 【arithmetic】搜索插入位置

    给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引.如果目标值不存在于数组中,返回它将会被按顺序插入的位置 可以假设数组中无重复元素. 示例 1: 输入: [1,3,5,6], 5 输出: ...

  6. Java类的使用

    在一个Java文件中写两个类:一个基本的类,一个测试类.注意:文件名称和测试类名称一致. 如何使用呢?创建对象使用.如何创建对象呢?格式:类名 对象名 = new 类名(); Student s = ...

  7. Liunx常用操作(二)-vim中删除命令

    VIM简介 Vim是一个类似于Vi的著名的功能强大.高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性.VIM是自由软件.Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Ema ...

  8. 全球数字高程数据(DEM)详解,还有地形晕渲、等高线等干货

    1 基本概念 DEM是数字高程模型的英文简称(Digital Elevation Model),是研究分析地形.流域.地物识别的重要原始资料.由于DEM 数据能够反映一定分辨率的局部地形特征,因此通过 ...

  9. linux 磁盘存储和文件系统

    1.磁盘结构 设备文件:关联至一个设备驱动程序,进而能够与之对应硬件设备进行通信 I/O Ports:I/O 设备地址 一切皆文件:open(),read(),write(),close() 设备类型 ...

  10. ApiPost的预执行脚本和后执行脚本

    ApiPost的预执行脚本和后执行脚本主要是用来定义变量.但是它们有什么区别呢? 预执行脚本 在当前接口发送请求前执行的脚本,可以理解为beforeSend的时候执行. 一般在这里,我们可以设置一些前 ...