学java的话最简单的项目入手肯定就是学生信息基本管理系统。
要想实现增删改查,就主要定义4个函数,一个主函数再调用就行。若想要功能更加丰富,则可以自行修改。
实体类Student
package day20190723;
public class Student {
private String name;
private double score;
public Student(){
}
public Student(String name,double score){
super();
this.name=name;
this.score=score;
}
public String getName(){
return name;
}
public void setName(String name){
this.name=name;
}
public double getScore()
{
return score;
}
public void setScore(double score){
this.score=score;
}
}
主要代码
package day20190723;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
public class system {
public static void main(String[] args)
{
ArrayList<Student> arry = new ArrayList<>();//创建一个动态数组ArrayList
while(true)//主函数循环
{
System.out.println("**********欢迎进入学生管理系统*********");
System.out.println("(1)添加学生档案 (2)显示所有学生信息");
System.out.println("(3)修改个别学生 (4)删除个别学生");
System.out.println("(5)退出系统");
System.out.println("**********************************");
System.out.println("请选择数字:");
Scanner number=new Scanner(System.in);//输入流
int stu=number.nextInt();//输入为整型
switch(stu){
case 1:
add(arry);
break;
case 2:
show(arry);
break;
case 3:
alert(arry);
break;
case 4:
del(arry);
break;
case 5:
System.out.println("感谢您的使用!");
System.exit(0);
break;
}
}
}
public static int add(ArrayList<Student> arry){//添加学生
Scanner num=new Scanner(System.in);//一个对象可被多次引用
System.out.println("请输入学生的名称:");
String name=num.nextLine();//字符串
System.out.println("请输入学生的成绩:");
double score=num.nextDouble();//存入学生的成绩为double类型
// 创建一个学生的对象
Student s=new Student();
s.setName(name);
s.setScore(score);
arry.add(s);//把这个对象添加到数组
System.out.println("添加学生成功!");
return 0;
}
public static int show(ArrayList<Student> arry){//显示学生
if(arry.size()==0)//数组长度为0
{
System.out.println("无学生信息可以查询!");
return 0;
}
for(int i=0;i<arry.size();i++)//遍历寻找
{
Student s=arry.get(i);
System.out.println("学生:"+s.getName()+" "+"成绩:"+s.getScore());
}System.out.println("学生信息显示完毕!");
return 0;
}
public static int del(ArrayList<Student> arry){//删除学生
System.out.println("请输入需要删除学生的姓名:");
Scanner input=new Scanner(System.in);
String str=input.nextLine();;
if(arry.size()==0)
{
System.out.println("无学生信息可以删除!");
return 0;
}int flag=-1;
for(int i=0;i<arry.size();i++)
{
Student s=arry.get(i);
if(s.getName().equals(str)){//若输入信息与数组对象中的name相等
flag=i;
System.out.println("学生:"+s.getName()+" 成绩:"+s.getScore());
}
}
if(flag==-1)
System.out.println("无该学生信息可以删除!");
else{
arry.remove(flag);
System.out.println("删除学生档案成功!");
}return 0;
}
public static int alert(ArrayList<Student> arry){//修改学生
System.out.println("请输入学生姓名:");
Scanner input=new Scanner(System.in);
String str;
str=input.nextLine();
int flag=-1;
for(int i=0;i<arry.size();i++)
{
Student s=arry.get(i);
if(s.getName().equals(str)){
flag=i;
System.out.println("学生:"+s.getName()+" 成绩:"+s.getScore());
}
}
if(flag==-1)
System.out.println("无该学生信息!");
else{
System.out.println("请输入修改后的成绩:");
Double score=input.nextDouble();
Student s1 =new Student();
s1.setScore(score);
s1.setName(str);//学生的姓名覆盖,不加则会返回Null
arry.set(flag, s1);
System.out.println("修改信息成功!");
}
return 0;
}
}