Java编写学生管理系统

由于刚刚接触Java,只是简单的实现了一些学生信息的管理。

简述

在这篇文章中,只是简单的处理了一些学生的信息,由于是一只小白没有什么高端操作,求大佬指教,在这个学生系统中主要执行了一下功能。
1. 查看所有学生
2. 查看某个学生
3.增加学生信息
4.删除学生信息
5. 更改学生信息

代码

在这个类中建立了学生信息;

package studentManger;
    
    
    public class Student {
    	public String name;    //如果需要录入别的学生信息,可以根据( public  类型   名称)进行录入
    	public int age;
    	public String number;
    	
    public Student() {
    		super();
    		// TODO Auto-generated constructor stub
    	}
    	public Student(String name,int age,String number) {
    		=name;
    		this.age=age;
    		this.number=number;
    }
    	@Override
    	public String toString() {
    		return "姓名 =" + name + ", 年龄=" + age + ", 成绩=" + number + "";//通过toString方法返回。
    	}                                                                               
    }
    
    
    **通过此类进行完成登录操作**

```java
*package studentManger;
import java.util.Scanner;
public class Login {
	static int i = 2;
	static String useName = "Tom";// 此处定义用户名
	static String passWord = "123";// 定义密码
	public static void deng() {
		for (int j = 1; j <= 3; j++) {
			@SuppressWarnings("resource")
			Scanner sc = new Scanner(System.in);
			System.out.print("请输入您的用户名:");
			String username_in = sc.next();
			System.out.print("请输入您的密码:");
			String password_in = sc.next();
			if (username_in.equals(useName) && password_in.equals(passWord)) {
				System.out.println("欢迎来到学生系统");
				System.out.println("------------------");
				StudentManger.init();     **//当密码正确时调用界面函数,来选择要进行的操作。**
				break;
			} else {
				System.out.println("用户名或密码错误,你还有" + i + "次输入机会");
				i--;
			}
		}
	}
}**


**通过此类进行学生信息的操作。**

```java
package studentManger;
import java.util.Scanner;
public class StudentManger {
	static Student[] student = { new Student("zhangsan", 17, "70"), new Student("lisi", 18, "78"),
			new Student("wangwu", 16, "80") };//先录入几个学生信息
	static Student[] studentSel= new Student[student.length-1];//建立此数组用于完成删除信息操作
	static Student[]studentAdd=new Student[student.length+1];//建立此数组用于完成添加信息操作
	public static void init() {
			System.out.println("1...查看所有学生信息");
			System.out.println("2...查看某个学生信息");
			System.out.println("3...更改某个学生信息");
			System.out.println("4...删除某个学生信息");      //界面函数,当密码成功时调用此函数
			System.out.println("5...增加一个学生信息");
			System.out.println("6...........退出.............");
			System.out.println("......................................................................");
		System.out.println("请选择要执行的操作");
		@SuppressWarnings("resource")
		Scanner scan = new Scanner(System.in);//在键盘中录入一个数选择要执行的操作。
		int scan_in = scan.nextInt();
		switch (scan_in) {
		case 1:
			searchStudents();
			break;
		case 2:
			searchStudent();
			break;
		case 3:
			changeStudent();
			break;
		case 4:
			delStudent();
			break;
		case 5:
			addStudent();
			break;
		case 6:
			System.out.println("欢迎再次使用");
			break;
		default:
			System.out.println("输入错误");
			break;
		}
	}
	public static void searchStudent() {               //查看某个学生信息
		System.out.println("请输入要查询的姓名");
		Scanner scan1 = new Scanner(System.in);//在这里我用的是通过名字来查询,但名字可能会有重复的,可以通过学号来查询。
		String saa = scan1.nextLine();
		System.out.println();
		for (int i = 0; i < 3; i++) {
			if (student[i].name.equals(saa)) {
				System.out.println(student[i]);
			}
		}
		tuichu();
		@SuppressWarnings("resource")
		Scanner scan = new Scanner(System.in);
		int scan_1 = scan.nextInt();//询问是否退出的函数体,当录入1时继续调用init函数
		if (scan_1 == 1) {
		init();
		} else
			System.out.println("欢迎再次使用");
	}
	public static void addStudent() {                  //添加学生信息
		int j=0 ;                                                                                                  
		System.out.println("请输入要添加学生的姓名");
		Scanner scan4=new Scanner(System.in);
		String name_in=scan4.nextLine();
		System.out.println("请输入要添加学生的年龄");
		Scanner scan5 = new Scanner(System.in);
		int age_in = scan5.nextInt();
		System.out.println("请输入要添加学生的成绩");
		Scanner scan6=new Scanner(System.in);
		String number_in=scan6.nextLine();
		for(int i=0;i<student.length;i++) {
			studentAdd[i]=student[i];//通过此循环,将student中的元素赋值给studentAdd,也就是实现将老的数组赋值给新的数组
					}
//		Student sts=new  Student(name_in, age_in, number_in);
//		studentAdd[student.length]=sts;
		studentAdd[student.length]=new Student();	//这句是为了防止在下句的赋值语句中出现空指针的错误。	
	studentAdd[student.length].name=name_in;
		studentAdd[student.length].age=age_in;
	studentAdd[student.length].number=number_in;
			student=studentAdd;//将已经添加新成员的数组赋值给student。并且student的长度已变,注意:将一个数组赋值给另一个数组时,两个数组必须是满的。
		for(int i=0;i<student.length;i++) {
		System.out.println(student[i]);//数组所有元素,
		}
		tuichu();
		@SuppressWarnings("resource")
		Scanner scan = new Scanner(System.in);//询问
		int scan1 = scan.nextInt();
		if (scan1 == 1) {
		init();
		} else
			System.out.println("欢迎再次使用");
	}
	public static void delStudent() {                 //删除学生信息
		int k=0;
			for (int i = 0; i < 3; i++) {                    //展示所有学生,选择要删除的学生
				System.out.println(student[i]);
				}          
		System.out.println("请输入要删除学生的姓名");
		Scanner scan3=new Scanner(System.in);
		String name_in=scan3.nextLine();
		for (int i = 0; i < 3; i++) {   
			if(!student[i].name.equals(name_in)) {
                 
				studentSel[k++]=student[i];      //这一个循环是遍历原始的数组,然后找到不需要删除的学生信息赋值给studentSel
			}	
			else {
				continue;
			}	
			}  
		student=studentSel;//数组的赋值,同添加学生的赋值
		for(int i=0;i<student.length;i++) {
			System.out.println(student[i]);
		}	
		tuichu();
		@SuppressWarnings("resource")
		Scanner scan = new Scanner(System.in);
		int scan_in = scan.nextInt();
		if (scan_in == 1) {
			init();
		} else
			System.out.println("欢迎再次使用");

	}

	public static void changeStudent() {         //修改学生信息
		int j = 0;
		System.out.println("请输入要改写的姓名");
		Scanner scan1 = new Scanner(System.in);
		String saa = scan1.nextLine();
		System.out.println();
		for (int i = 0; i < 3; i++) {
			if (student[i].name.equals(saa)) {
				j = i;
				System.out.println(student[i]);
			
			System.out.println("请输入要修改的年龄");
			Scanner scan2 = new Scanner(System.in);
			int age_in = scan2.nextInt();
			student[j].age = age_in;//将年龄替换即可。
			System.out.println("请输入要修改的成绩");
			Scanner scan3 = new Scanner(System.in);
			String number_in = scan3.nextLine();
			student[j].number = number_in;
			System.out.println(student[j]);
			tuichu();
			@SuppressWarnings("resource")
			Scanner scan = new Scanner(System.in);
			int scan_in = scan.nextInt();
			if (scan_in == 1) {
				init();
			}
		}
			int t=0;
			if(!student[i].name.equals(saa)&&i==t) {
				System.out.println("wu");
				tuichu();
			}
			
			}
		
	}

public static void searchStudents() {            //查看所有学生
		for (int i = 0; i < 3; i++) {
			System.out.println(student[i]);

		}
		tuichu();
		@SuppressWarnings("resource")
		Scanner scan = new Scanner(System.in);

		int scan_in = scan.nextInt();
		if (scan_in == 1) {
		init();
		} else
			System.out.println("欢迎再次使用");
	}
	public static void tuichu() {
		System.out.println("是否执行下一步操作");
		System.out.println("1:继续执行");
		System.out.println("---------------");
		System.out.println("---------------");
		System.out.println("2:输入其他数退出");
	}
}