java对象数组实现学生信息管理系统

网友投稿 242 2023-01-01

java对象数组实现学生信息管理系统

本文实例为大家分享了java实现学生信息管理系统,供大家参考,具体内容如下

一、功能需求

case 10:添加学生

case 11:查找一个学生

case 12:根据编号更新学生基本信息

case 13:根据编号删除学生

case 14:根据编号录入成绩

case 15:根据某门成绩排序

case 16:根据总成绩排序

case 99:退出系统

二、代码框架

一共有三个文件:

1、Student.java(学生类) //学生的基本信息

2、StudentAdmin.java(学生管理类) //用于对学生数组操作

3、StudentTest.java(主程序)

三、代码

下面为具体的代码:

1.学生类 Student.java

package com.studentadmin.test;

/**

* 学生类

*/

public class Student {

private int number;

private String name;

private int age;

private int python;

private int java;

private int linux;

private int sql;

private int sum;

private int avg;

public int getNumber() {

return number;

}

public void setNumber(int number) {

this.number = number;

}

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 getPython() {

return python;

}

public void setPython(int python) {

this.python = python;

}

public int getJava() {

return java;

}

public void setJava(int java) {

this.java = java;

}

public int getLinux() {

return linux;

}

public void setLinux(int linux) {

this.linux = linux;

}

public int getSql() {

return sql;

}

public void setSql(int sql) {

this.sql = sql;

}

public int getSum() {

return sum;

}

public void setSum() {

this.sum = this.python+this.java+this.linux+this.sql;

}

public int getAvg() {

return avg;

}

public void setAvg() {

this.avg = this.sum/4;

}

public String toString(){ //学生信息

String str="\t\t"+this.number+"\t\t"+this.name+"\t\t"+this.age+"\t\t"+this.python+"\t\t"

+this.java+"\t\t"+this.linux+"\t\t"+this.sql+"\t\t"+this.sum+"\t\t"+this.avg;

return str;

}

}

2.学生管理类 StudentAdmin.java

package com.studentadmin.test;

/**

* 管理学生的类

*/

public class StudentAdmin {

static String msg="\t\t编号\t\t姓名\t\thttp://年龄\t\tpython\tjava\tlinux\tsql\t\t总分\t\t平均分";

//功能菜单:

public void menu(){

System.out.println("-----请选择你要执行的功能-----");

System.out.println("10:添加一个学生");

System.out.println("11:查找一个学生");

System.out.println("12:根据学生编号更新学生基本信息");

System.out.println("13:根据学生编号删除学生");

System.out.println("14:根据学生编号输入学生各门成绩");

System.out.println("15:根据某门成绩进行排序");

System.out.println("16:根据总分进行排序");

System.out.println("99:退出系统");

System.out.println("----------------------------");

}

//返回数组中元素为空的下标

public int index(Student[] arr){

for(int i=0;i

if(arr[i]==null){

return i;//新学生的编号

}

}

return 999; //学生已满员

}

//打印所有学生的信息

public void print(Student[] arr){

System.out.println(msg);

for(int i=0;i

if(arr[i]!=null){

System.out.println(arr[i]);

}

}

}

//10:添加学生

public void create(String name,int age,Student[] arr){

int index=index(arr); //获取新学生的位置

if(index!=999) { //如果还有空位置,可以添加学生

Student stu = new Student();

stu.setName(name);

stu.setAge(age);

stu.setNumber(index);

arr[index] = stu;

System.out.println("添加学生成功");

this.print(arr);

}else{

System.out.println("班级学生已满,无法再添加学生了");

}

}

//11:查找学生

public void select(int number,Student[] arr){

for(int i=0;i

if(arr[i]!=null){

if(arr[i].getNumber()==number){

System.out.println(msg);

System.out.println(arr[i]);

return;

}

}

}

System.out.println("没有这个编号的学生");

}

//12:根据编号更新学生

public void update(int number,String name,int age,Student[] arr){

for(int i=0;i

if(arr[i]!=null){

if(arr[i].getNumber()==number){

arr[i].setName(name);

arr[i].setAge(age);

System.out.println("更新学生信息成功");

this.print(arr);

return;

}

}

}

System.out.println("没有这个学生");

}

//13:根据编号删除学生

public void delete(int number,Student[] arr){

for(int i=0;i

if(arr[i]!=null){

if(arr[i].getNumber()==number){

arr[i]=null;

System.out.println("删除成功");

this.print(arr);

return;

}

}

}

System.out.println("没有这个编号的学生");

}

//14:根据编号录入成绩

public void input(int number, int python,int java,int linux,int sql,Student[] arr){

for(int i=0;i

if (arr[i] != null) {

if (arr[i].getNumber() == number) {

arr[number].setPython(python);

arr[number].setJava(java);

arr[number].setLinux(linux);

arr[number].setSql(sql);

arr[number].setSum();

arr[number].setAvg();

System.out.println("录入成绩成功");

this.print(arr);

return;

}

}

}

System.out.println("不存在这个学生");

}

//15:根据某门成绩排序

public void courseSort(int number,Student[] arr){

switch (number) {

case 1:

for (int i = 0; i < arr.length - 1; i++) {

for (int j = i + 1; j < arr.length; j++) {

if (arr[i] != null && arr[j] != null) {

if (arr[i].getPython() < arr[j].getPython()) {

Student temp = arr[i];//比较某门成绩,交换学生

arr[i] = arr[j];

arr[j] = temp;

}

}

}

}

break;

case 2:

for (int i = 0; i < arr.length - 1; i++) {

for (int j = i + 1; j < arr.length; j++) {

if (arr[i] != null && arr[jEkKSW] != null) {

http:// if (arr[i].getJava() < arr[j].getJava()) {

Student temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

}

}

}

}

break;

case 3:

for (int i = 0; i < arr.length - 1; i++) {

for (int j = i + 1; j < arr.length; j++) {

if (arr[i] != null && arr[j] != null) {

if (arr[i].getLinux() < arr[j].getLinux()) {

Student temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

}

}

}

}

break;

case 4:

for (int i = 0; i < arr.length - 1; i++) {

for (int j = i + 1; j < arr.length; j++) {

if (arr[i] != null && arr[j] != null) {

if (arr[i].getSql() < arr[j].getSql()) {

Student temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

}

}

}

}

break;

}

this.print(arr);

}

//16:根据总分排序

public void sumSort(Student[] arr){

for (int i = 0; i < arr.length - 1; i++) {

for (int j = i + 1; j < arr.length; j++) {

if (arr[i] != null && arr[j] != null) {

if (arr[i].getSum() < arr[j].getSum()) {

Student temp = arr[i];

arr[i] = arr[j];

arr[j] = temp;

}

}

}

}

this.print(arr);

}

}

3.主程序 StudentTest.java

package com.studentadmin.test;

import java.util.Scanner;

/**

* 主程序

*/

public class StudentTest {

public static void main(String[] args) {

Scanner sc=new Scanner(System.in);

System.out.println("请定义学生人数");

int stuNum=sc.nextInt(); //定义学生人数

Student[] stuArr=new Student[stuNum]; //定义一个学生数组

StudentAdmin admin=new StudentAdmin(); //定义一个管理对象,用来调用管理学生的方法

while(true){

admin.menu();//功能菜单

int number=sc.nextInt(); //选择的菜单选项

if(number==10){ //10:添加一个学生

System.out.println("请输入学生姓名");

String name=sc.next();

System.out.println("请输入学生年龄");

int age=sc.nextInt();

admin.create(name,age,stuArr);

}else if(number==11){//11:查找一个学生

System.out.println("请输入你要查找的学生的编号");

int num=sc.nextInt();

admin.select(num,stuArr);

}else if(number==12){//12:根据学生编号更新学生基本信息

System.out.println("请输入你要更新的学生的编号");

int num=sc.nextInt();

System.out.println("请输入学生姓名");

String name=sc.next();

System.out.println("请输入学生年龄");

int age=sc.nextInt();

admin.update(num,name,age,stuArr);

}else if(number==13){//13:根据学生编号删除学生

System.out.println("请输入你要删除的学生编号");

int num=sc.nextInt();

admin.delete(num,stuArr);

}else if(number==14){//14:根据编号输入学生各门成绩

System.out.println("请输入学生编号");

int num=sc.nextIhttp://nt();

System.out.println("请输入学生python成绩");

int python=sc.nextInt();

System.out.println("请输入学生java成绩");

int java=sc.nextInt();

System.out.println("请输入学生linux成绩");

int linux=sc.nextInt();

System.out.println("请输入学生sql成绩");

int sql=sc.nextInt();

admin.input(num,python,java,linux,sql,stuArr);

}else if (number==15){//15:根据某门成绩进行排序

System.out.println("请选择你要排序的课程(1:python 2:java 3:linux 4:sql)");

int courseNum=sc.nextInt();

admin.courseSort(courseNum,stuArr);

}else if (number==16){//16:根据总分进行排序

admin.sumSort(stuArr);

}else if(number==99){//99:退出系统

System.exit(0);

}else{

System.out.println("请重新输入");

}

}

}

}

四、运行结果

1.添加学生功能

2.查找学生功能

3.根据编号更新学生基本信息功能

4.根据学生编号删除学生功能

5.根据学生编号录入学生各门成绩

6.根据某门成绩进行排序

7.根据总分进行排序

8.退出系统

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:如何开发基于Netty的HTTP/HTTPS应用程序
下一篇:邮快递物流查询单号(快递单号查询邮政物流)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~