学了几天JAVA后,试了写了个学生管理系统,全都是基础语法!!
学生管理系统分为五个功能:
- 添加学生
- 删除学生
- 修改学生
- 查看所有学生
- 退出
1. 先创建学生类
public class student {
private String sid;//学号
private String name;//姓名
private String age;//年龄
private String address;//地址
public student() {
}//无参构造
public student(String sid,String name,String age,String address) {
this.sid=sid;
this.name=name;
this.age=age;
this.address=address;
}
public String getsid() {
return this.sid;
}
public void setsid(String sid) {
this.sid=sid;
}
public String getname() {
return this.name;
}
public void setname(String name) {
this.name=name;
}
public String getage() {
return this.age;
}
public void setage(String age) {
this.age=age;
}
public String getaddress() {
return this.address;
}
public void setaddress(String address) {
this.address=address;
}
}
2. 判重函数
//判断添加学生时,学号是否重复
public static boolean isused(ArrayList<student> arr,String sid) {
boolean flag=false;
for(int i=0;i<arr.size();i++) {
if(arr.get(i).getsid().equals(sid)) {
flag=true;
break;
}
}
return flag;
}
3. 添加学生
public static void addStudent(ArrayList<student> arr) {
Scanner in=new Scanner(System.in);
String sid;
while(true) {
System.out.println("请输入学生学号:");
sid=in.nextLine();
if(isused(arr,sid)) {
System.out.println("该学号已存在,请重新输入");
}else{
break;
}
}
System.out.println("请输入学生姓名:");
String name=in.nextLine();
System.out.println("请输入学生年龄:");
String age=in.nextLine();
System.out.println("请输入学生地址:");
String address=in.nextLine();
student s=new student();
s.setsid(sid);
s.setname(name);
s.setage(age);
s.setaddress(address);
arr.add(s);
System.out.println("添加学生成功");
}
4. 删除学生
public static void deleteStudent(ArrayList<student> arr) {
Scanner in=new Scanner(System.in);
System.out.println("请输入你要删除的学生学号:");
String sid=in.nextLine();
int flag=0;//判断是否有这个学生
for(int i=0;i<arr.size();i++) {
student s=arr.get(i);
if(s.getsid().equals(sid)) {
arr.remove(i);
flag=1;
break;
}
}
if(flag==0) System.out.println("学号输入有误,请重新输入");
else System.out.println("删除成功");
}
5. 查看学生
public static void findStudent(ArrayList<student> arr) {
if(arr.size()==0) {
System.out.println("暂无信息,请先添加信息再查询");
return;
}
System.out.println("学号\t姓名\t年龄\t地址");
for(int i=0;i<arr.size();i++) {
student s=arr.get(i);
System.out.println(s.getsid()+"\t"+s.getname()+"\t"+s.getage()+"岁\t"+s.getaddress());
}
}
6. 修改学生
public static void motifyStudent(ArrayList<student> arr) {
System.out.println("请输入需要修改学生的学号:");
Scanner in=new Scanner(System.in);
String sid=in.nextLine();
int flag=0;//记录该学号是否存在
for(int i=0;i<arr.size();i++) {
student s=arr.get(i);
if(s.getsid().equals(sid)) {
flag=1;
break;
}
}
if(flag==0) {
System.out.println("学号不存在,请重新输入");
return;
}
//键盘录入要修改的学生的新信息
System.out.println("请输入学生新姓名:");
String name=in.nextLine();
System.out.println("请输入学生新年龄:");
String age=in.nextLine();
System.out.println("请输入学生新地址:");
String address=in.nextLine();
student s=new student();
s.setsid(sid);
s.setname(name);
s.setage(age);
s.setaddress(address);
//遍历集合修改相应学生信息
for(int i=0;i<arr.size();i++) {
student stu=arr.get(i);
if(stu.getsid().equals(sid)) {
arr.set(i, s);
break;
}
}
System.out.println("修改学生成功");
}
下边是全部代码:
package 学生管理系统;
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
ArrayList<student> arr=new ArrayList<>();
while(true) {
System.out.println("--------欢迎来到学生管理系统--------");
System.out.println("1.添加学生");
System.out.println("2.删除学生");
System.out.println("3.修改学生");
System.out.println("4.查看所有学生");
System.out.println("5.退出");
System.out.println("请输入你的选择:");
Scanner in=new Scanner(System.in);
int index=in.nextInt();
switch (index) {
case 1:
System.out.println("添加学生");
addStudent(arr);
break;
case 2:
System.out.println("删除学生");
deleteStudent(arr);
break;
case 3:
System.out.println("修改学生");
motifyStudent(arr);
break;
case 4:
System.out.println("查看所有学生");
findStudent(arr);
break;
case 5:
System.out.println("谢谢使用");
System.exit(0);//jvm退出
default:
System.out.println("输入有误,请重新输入");
break;
}
}
}
//添加学生
public static void addStudent(ArrayList<student> arr) {
Scanner in=new Scanner(System.in);
String sid;
while(true) {
System.out.println("请输入学生学号:");
sid=in.nextLine();
if(isused(arr,sid)) {
System.out.println("该学号已存在,请重新输入");
}else{
break;
}
}
System.out.println("请输入学生姓名:");
String name=in.nextLine();
System.out.println("请输入学生年龄:");
String age=in.nextLine();
System.out.println("请输入学生地址:");
String address=in.nextLine();
student s=new student();
s.setsid(sid);
s.setname(name);
s.setage(age);
s.setaddress(address);
arr.add(s);
System.out.println("添加学生成功");
}
//判断添加学生时,学号是否重复
public static boolean isused(ArrayList<student> arr,String sid) {
boolean flag=false;
for(int i=0;i<arr.size();i++) {
if(arr.get(i).getsid().equals(sid)) {
flag=true;
break;
}
}
return flag;
}
//查看学生
public static void findStudent(ArrayList<student> arr) {
if(arr.size()==0) {
System.out.println("暂无信息,请先添加信息再查询");
return;
}
System.out.println("学号\t姓名\t年龄\t地址");
for(int i=0;i<arr.size();i++) {
student s=arr.get(i);
System.out.println(s.getsid()+"\t"+s.getname()+"\t"+s.getage()+"岁\t"+s.getaddress());
}
}
//删除学生
public static void deleteStudent(ArrayList<student> arr) {
Scanner in=new Scanner(System.in);
System.out.println("请输入你要删除的学生学号:");
String sid=in.nextLine();
int flag=0;//判断是否有这个学生
for(int i=0;i<arr.size();i++) {
student s=arr.get(i);
if(s.getsid().equals(sid)) {
arr.remove(i);
flag=1;
break;
}
}
if(flag==0) System.out.println("学号输入有误,请重新输入");
else System.out.println("删除成功");
}
//修改学生
public static void motifyStudent(ArrayList<student> arr) {
System.out.println("请输入需要修改学生的学号:");
Scanner in=new Scanner(System.in);
String sid=in.nextLine();
int flag=0;//记录该学号是否存在
for(int i=0;i<arr.size();i++) {
student s=arr.get(i);
if(s.getsid().equals(sid)) {
flag=1;
break;
}
}
if(flag==0) {
System.out.println("学号不存在,请重新输入");
return;
}
//键盘录入要修改的学生的新信息
System.out.println("请输入学生新姓名:");
String name=in.nextLine();
System.out.println("请输入学生新年龄:");
String age=in.nextLine();
System.out.println("请输入学生新地址:");
String address=in.nextLine();
student s=new student();
s.setsid(sid);
s.setname(name);
s.setage(age);
s.setaddress(address);
//遍历集合修改相应学生信息
for(int i=0;i<arr.size();i++) {
student stu=arr.get(i);
if(stu.getsid().equals(sid)) {
arr.set(i, s);
break;
}
}
System.out.println("修改学生成功");
}
}