题目:

java 使用面向对象方式实现录入学生信息,取出成绩最大值、最小值、平均值、对其进行排序

gitup源码下载地址:

https://github.com/benxiaohai8888/Javase/blob/master/ObjectStudent.java

代码:

  1. import java.util.Scanner;
  2. public class O<span style="font-family: Arial, 'Microsoft YaHei', 微软雅黑, 宋体, 'Malgun Gothic', Meiryo, sans-serif; font-size: 13px; line-height: 19px; widows: auto; background-color: rgb(249, 251, 252);">bject</span>Student{
  3. private  String name;//姓名
  4. private  int age;//年龄
  5. private  double score;//分数
  6. //定义全局的变量
  7. private Student[] students;
  8. public void setName(String name){
  9. this.name=name;
  10. }
  11. public String getName(){
  12. return name;
  13. }
  14. public void setAge(int age)
  15. {
  16. this.age=age;
  17. }
  18. public int getAge(){
  19. return age;
  20. }
  21. public void setScore(double score)
  22. {
  23. this.score=score;
  24. }
  25. public double getScore(){
  26. return score;
  27. }
  28. //初始化学生
  29. public void initStudent(){
  30. Scanner scanner=new Scanner(System.in);
  31. students=new Student[3];
  32. System.out.println("--------输入3个学生的信息--------");
  33. int j=1;
  34. for(int i=0;i<students.length;i++){
  35. Student stu=new Student();
  36. System.out.println("输入第["+j+"]个学生的信息:");
  37. System.out.println("姓名:");
  38. stu.setName(scanner.next());
  39. System.out.println("年龄:");
  40. stu.setAge(scanner.nextInt());
  41. System.out.println("分数:");
  42. stu.setScore(scanner.nextDouble());
  43. students[i]=stu;
  44. j++;
  45. }
  46. //打印输出
  47. for(int a=0;a<students.length;a++){
  48. Student stu=students[a];
  49. System.out.println("第["+(a+1)+"]个学生的姓名:"+stu.getName());
  50. System.out.println("第["+(a+1)+"]个学生的年龄:"+stu.getAge());
  51. System.out.println("第["+(a+1)+"]个学生的分数:"+stu.getScore());
  52. System.out.println("----------------------------------------");
  53. }
  54. }
  55. //总分
  56. public double sumScore(){
  57. double sumScore=0.0;
  58. for(int a=0;a<students.length;a++){
  59. Student stu=students[a];
  60. sumScore+=stu.getScore();
  61. }
  62. return sumScore;
  63. }
  64. //平均分
  65. public double avgScore(){
  66. return sumScore()/students.length;
  67. }
  68. //最大值
  69. public double max(){
  70. double max=students[0].getScore();
  71. for(int a=0;a<students.length;a++){
  72. if(students[a].getScore()>max){
  73. max=students[a].getScore();
  74. }
  75. }
  76. return max;
  77. }
  78. //最大值的学生
  79. public Student maxStudent(){
  80. double max=students[0].getScore();
  81. int index=-1;
  82. for(int a=0;a<students.length;a++){
  83. if(students[a].getScore()>max){
  84. max=students[a].getScore();
  85. index=a;
  86. }
  87. }
  88. return students[index];
  89. }
  90. //最小值
  91. public double min(){
  92. double min=students[0].getScore();
  93. for(int a=0;a<students.length;a++){
  94. if(students[a].getScore()<min){
  95. min=students[a].getScore();
  96. }
  97. }
  98. return min;
  99. }
  100. //最小值的学生
  101. public Student minStudent(){
  102. double min=students[0].getScore();
  103. int index=-1;
  104. for(int a=0;a<students.length;a++){
  105. if(students[a].getScore()<min){
  106. min=students[a].getScore();
  107. index=a;
  108. }else{
  109. min=students[0].getScore();
  110. index=0;
  111. }
  112. }
  113. return students[index];
  114. }
  115. //排序
  116. public void sort(){
  117. Student st=new Student();
  118. for(int i=0;i<students.length-1;i++){
  119. for(int j=i+1;j<students.length-1;j++){
  120. if(students[i].getScore() > students[j].getScore()){
  121. st=students[i];
  122. students[i]=students[j];
  123. students[j]=st;
  124. }
  125. }
  126. }
  127. for(Student s: students){
  128. System.out.print("姓名:"+s.getName()+" ");
  129. System.out.print("年龄:"+s.getAge()+"  ");
  130. System.out.print("分数:"+s.getScore()+"  ");
  131. System.out.println();
  132. }
  133. }
  134. public static void main(String[] args){
  135. Student stu=new Student();
  136. //初始化学生
  137. stu.initStudent();
  138. //总分
  139. System.out.println("总分: "+stu.sumScore());
  140. //平均分
  141. System.out.println("平均分: "+stu.avgScore());
  142. //分数最大值
  143. System.out.println("最大值: "+stu.max());
  144. //分数最大值的学生信息
  145. System.out.println("分数最大值的学生姓名: "+stu.maxStudent().getName());
  146. //分数最小值
  147. System.out.println("最小值: "+stu.min());
  148. //分数最小值的学生信息
  149. System.out.println("分数最小值的学生姓名: "+stu.minStudent().getName());
  150. //排序
  151. System.out.println("排序结果; ");
  152. stu.sort();
  153. }
  154. }<span style="color:#990000;">
  155. </span>

结果:

一个Java交流平台分享给你们,让你在实践中积累经验掌握原理。如果你想拿高薪,想突破瓶颈,想跟别人竞争能取得优势的,想进BAT但是有担心面试不过的,可以加我的Java学习交流群:642830685

注:加群要求

1、大学学习的是Java相关专业,毕业后面试受挫,找不到对口工作

2、在公司待久了,现在过得很安逸,但跳槽时面试碰壁。需要在短时间内进修、跳槽拿高薪的

3、参加过线下培训后,知识点掌握不够深刻,就业困难,想继续深造

4、已经在Java相关部门上班的在职人员,对自身职业规划不清晰,混日子的

5、有一定的C语言基础,接触过java开发,想转行的

java 使用面向对象方式实现录入学生信息,取出成绩最大值、最小值、平均值、对其进行排序的更多相关文章

  1. Java基础知识强化之IO流笔记51:IO流练习之 键盘录入学生信息按照总分排序写入文本文件中的案例

    1.  键盘录入学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分排序写入文本文件中 分析:   A:创建学生类   B:创建集合对象      TreeSet<Student>   ...

  2. 《MySQL数据操作与查询》- 维护学生信息、老师信息和成绩信息 支持按多种条件组合查询学生信息和成绩信息

    综合项目需求 一.系统整体功能 系统需支持以下功能: 维护学生信息.老师信息和成绩信息 支持按多种条件组合查询学生信息和成绩信息 学生 Student(id,班级id,学号,姓名,性别,电话,地址,出 ...

  3. 使用Java Stream,提取集合中的某一列/按条件过滤集合/求和/最大值/最小值/平均值

    不得不说,使用Java Stream操作集合实在是太好用了,不过最近在观察生产环境错误日志时,发现偶尔会出现以下2个异常: java.lang.NullPointerException java.ut ...

  4. IO流(1)-键盘录入学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件

    1.先写一个Student类 public class Student { private String name; private int chinese; private int math; pr ...

  5. Android(java)学习笔记195:学生信息管理系统案例(SQLite + ListView)

    1.首先说明一个知识点,通常我们显示布局文件xml都是如下: setContentView(R.layout.activity_main): 其实每一个xml布局文件就好像一个气球,我们可以使用Vie ...

  6. Android(java)学习笔记188:学生信息管理系统案例(SQLite + ListView)

    1.首先说明一个知识点,通常我们显示布局文件xml都是如下: setContentView(R.layout.activity_main): 其实每一个xml布局文件就好像一个气球,我们可以使用Vie ...

  7. C#复习,输入学生信息排列成绩

    C#复习:在控制台程序中使用结构体.集合,完成下列要求项目要求:一.连续输入5个学生的信息,每个学生都有以下4个内容:1.序号 - 根据输入的顺序自动生成,不需要手动填写,如输入第一个学生的序号是1, ...

  8. 在Main中定义student的结构体,进行年龄从大到小依次排序录入学生信息。(结构体的用法以及冒泡排序)

    using System; using System.Collections; using System.Collections.Generic; using System.Linq; using S ...

  9. IO流的练习4 —— 键盘录入学生成绩信息,进行排序后存入文本中

    需求: 键盘录入5个学生信息(姓名,语文成绩,数学成绩,英语成绩),按照总分从高到低存入文本文件 分析: A:创建学生类 B:创建集合对象 TreeSet<Student> C:键盘录入学 ...

随机推荐

  1. 四、smarty模板的自定义函数

    smarty模板的自定义函数(这里介绍的是常用) 分为三个种类: 1.  变量调节器 2.  函数 3.  块函数 三个种类插件的用法: 1.  变量调解器的用法, <{$var|myfun:a ...

  2. vuex 的介绍

    vue-cli 中 css 的作用域 scoped vue 数据的为响应数据,一改全改,一变全变的特性,我们的很多处理也会围绕着他 vuex 是处理数据的,是 vue 的数据仓库 vuex 的作用:采 ...

  3. spark streaming 1: SparkContex

    StreamingContext 和SparkContex的用途是差不多的,作为spark stream的入口,提供配置.生成DStream等功能. 总体来看,spark stream包括如下模块: ...

  4. CentOS 6.4 搭建 ntop 网络流量监控分析平台

    [前言] Ntop是一种监控网络流量工具,用ntop显示网络的使用情况比其他一些网络管理软件更加直观.详细.Ntop甚至可以列出每个节点计算机的网络带宽利用率. 功能: 自动从网络中识别有用的信息: ...

  5. DAY 3模拟赛

    DAY3 钟皓曦来了! T1 网址压缩 [问题描述] 你是能看到第一题的 friends 呢.           ——hja 众所周知,小葱同学擅长计算,尤其擅长计算组合数,但这个题和组合数没什么关 ...

  6. LeetCode 409——最长回文串

    1. 题目 2. 解答 我们先来看一看回文子串的规律,如果回文子串的长度为偶数,那么其中所有的每个元素都出现了偶数次:如果回文子串的长度为奇数,那么有一个元素出现了奇数次而其余每个元素都出现了偶数次. ...

  7. 写python获取android设备的GPS及姿态信息

    在android上,我们可以使用QPython来编写.执行Python脚本.它对很多android 系统函数进行了方便的封装,使用QPython编写功能简单的小程序异常方便. 这个示例是我之前用来读取 ...

  8. 阶段3 2.Spring_07.银行转账案例_5 编写业务层和持久层事务控制代码并配置spring的ioc

    Service中就需要用到 TransactionManager中的方法.提供set方法等着spring注入 这里面所有的操作都可以加上事物控制 其他的方法都是相同的操作 这里没有返回结果 转账的方法 ...

  9. delphi 导出excel

    Var FExcel:OleVariant; //excel应用程序 FWorkBook :OleVariant; //工作表 Temsheet:OleVariant; //工作薄 FPicture: ...

  10. hibernate 事务处理

    Hibernate的事务处理:事务:* 事务就是逻辑上的一组操作,要么全都成功,要么全都失败!!! 事务特性:* 原子性:事务一组操作不可分割.* 一致性:事务的执行前后,数据完整性要保持一致.* 隔 ...