學生管理系統(ArrayList)
阿新 • • 發佈:2021-01-08
技術標籤:java
學生管理系統(ArrayList)
通過實現Collection介面的ArrayList類,來實現學生管理系統,實現簡單的增刪改查 。
public class CollectionTest {
//宣告學生類集合
private ArrayList<Student> list;
private Scanner sc=new Scanner(System.in);
//通過無參構造器初始化集合,並新增元素。
public CollectionTest() {
list = new ArrayList< >();
list.add(new Student(1,"小明",18,500));
}
public static void main(String[] args) {
new CollectionTest().menu();
}
//功能主面板
public void showMenu(){
System.out.println("****************學生管理系統********************");
System.out.println( "\t\t\t\t1.新增學生");
System.out.println("\t\t\t\t2.刪除學生");
System.out.println("\t\t\t\t3.修改學生");
System.out.println("\t\t\t\t4.檢視所有");
System.out.println("\t\t\t\t5.查詢學生");
System.out.println("\t\t\t\t6.退 出" );
}
public void menu(){
while (true){
showMenu();
//輸入操作指令以便實現功能
System.out.println("請輸入操作指令");
String choose = sc.next();
switch (choose){
//新增學生
case "1": add();
break;
//輸入學號刪除學生
case "2":
System.out.println("請輸入要刪除的學生學號");
int id = sc.nextInt();
delete(id);
break;
//輸入學號修改學生
case "3":
System.out.println("請輸入要修改的學生學號");
int id1 = sc.nextInt();
update(id1);
break;
//檢視所有學生資訊
case "4": showAll();
break;
//根據id學生資訊
case "5":
System.out.println("請輸入要查詢的學生學號");
int id2 = sc.nextInt();
showOne(id2);
break;
//退出
case "6":
System.out.println("已退出");
System.exit(0);
break;
default:
System.out.println("您的輸入有誤");
}
}
}
// add方法
public void add(){
System.out.println("請輸入學生編號");
int id = sc.nextInt();
System.out.println("請輸入學生姓名");
String name = sc.next();
System.out.println("請輸入學生年齡");
int age = sc.nextInt();
System.out.println("請輸入學生成績");
int score = sc.nextInt();
list.add(new Student(id,name,age,score));
System.out.println("新增成功");
}
// 通過ArrayList自帶的get方法方便查詢。
//刪除方法
public void delete (int id) {
for (int i = 0; i < list.size(); i++) {
if (id == list.get(i).getId()) {
list.remove(list.get(i));
System.out.println("刪除成功");
}
}
}
//修改方法
public void update(int id1){
for (int i = 0; i < list.size(); i++) {
if (id1==list.get(i).getId()){
//輸入要修改學生的資訊
System.out.println("請輸入學生編號");
int id = sc.nextInt();
System.out.println("請輸入學生姓名");
String name = sc.next();
System.out.println("請輸入學生年齡");
int age = sc.nextInt();
System.out.println("請輸入學生成績");
int score = sc.nextInt();
//根據arrayList類的set()方法修改資料
list.set(i,new Student(id,name,age,score));
System.out.println("修改成功");
}
}
}
//查詢所有的方法
public void showAll(){
for (int i = 0; i < list.size(); i++) {
if (list.get(i)!=null){
System.out.println(list.get(i));
}
}
}
//查詢某個學生
public void showOne (int id){
for (int i = 0; i < list.size(); i++) {
if (id == list.get(i).getId()) {
if (list.get(i)!=null){
System.out.println(list.get(i));
}
}
}
}
}