通過學(xué)習(xí)的一系列知識(shí)點(diǎn)綜合的小案例,通過控制臺(tái)來完成一系列的增刪查改的操作。
網(wǎng)站建設(shè)哪家好,找創(chuàng)新互聯(lián)建站!專注于網(wǎng)頁設(shè)計(jì)、網(wǎng)站建設(shè)、微信開發(fā)、成都小程序開發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了昌樂免費(fèi)建站歡迎大家使用!
準(zhǔn)備工作
開發(fā)工具IDEA2019.1.4,jdk13
思路
一共三個(gè)類,一個(gè)接口
存放學(xué)生數(shù)據(jù)用我們學(xué)過的ArrayList,由于類是一種引用數(shù)據(jù)類型,所以我們可以將泛型指代成Student
編寫邏輯
業(yè)務(wù)層調(diào)用邏輯層,邏輯層調(diào)用數(shù)據(jù)層
知識(shí)點(diǎn)
面向?qū)ο?,ArrayList,泛型,循環(huán),迭代,switch
具體代碼實(shí)現(xiàn)
Student.java
package com.zxy.bean; public class Student { private int id; private String name; private int age; private String addr; public Student(){ // 無參構(gòu)造方法,防止出錯(cuò) } public Student(int id,String name,int age,String addr){ this.id=id; this.name=name; this.age=age; this.addr=addr; } public int getId() { return id; } public void setId(int id) { this.id = id; } 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 String getAddr() { return addr; } public void setAddr(String addr) { this.addr = addr; } @Override public String toString() { return "{ID: "+this.id+",name: "+this.name+",age: "+this.age+",addr: "+this.addr+"}"; } }
StudentManager.java
package com.zxy.bean; import java.util.ArrayList; import java.util.Scanner; public class StudentManager implements StudentInterface { @Override public void addStudent(ArrayList<Student> list) { Scanner sc=new Scanner(System.in); System.out.println("請(qǐng)輸入學(xué)號(hào):"); int id=sc.nextInt(); System.out.println("請(qǐng)輸入姓名:"); String name=sc.next(); System.out.println("請(qǐng)輸入年齡:"); int age=sc.nextInt(); System.out.println("請(qǐng)輸入地址:"); String addr=sc.next(); list.add(new Student(id,name,age,addr)); System.out.println("添加完成"); } @Override public void delStudent(ArrayList<Student> list) { // 首先刪除之前還是要判斷一下有沒有信息 Scanner sc=new Scanner(System.in); if (list.size()==0){ // 如果為0,則說明list中沒有學(xué)生信息 System.out.println("沒有學(xué)生信息"); return; } findStudent(list); System.out.println("輸入要?jiǎng)h除的學(xué)號(hào):"); // 輸入要?jiǎng)h除的學(xué)號(hào) int id=sc.nextInt(); // 判斷要?jiǎng)h除的id是不是在list中 for (int i=0;i<list.size();i++){ if (list.get(i).getId()==id){ Object string = list.remove(i); System.out.println("刪除成功,你刪除的是:"+string); } } } @Override public void findStudent(ArrayList<Student> list) { if (list.size()==0){ System.out.println("沒有學(xué)生信息"); } // 查詢?nèi)繉W(xué)生信息 for (Student student:list){ System.out.println(student.toString()); System.out.println("信息已展示"); } return; } @Override public void changeStudent(ArrayList<Student> list) { // 修改學(xué)生信息 Scanner sc=new Scanner(System.in); if (list.size()==0){ System.out.println("當(dāng)前沒有學(xué)生信息"); return;// 這樣會(huì)直接終止當(dāng)前語句,不會(huì)執(zhí)行下面的語句了 } System.out.println("輸入要修改的學(xué)生的學(xué)號(hào):"); int id=sc.nextInt(); // 判斷id是否在list中,如果在,就修改 boolean flag=false;// 如果boolean為false,那么說明沒有在這個(gè)人 for (int i=0;i<list.size();i++){ if (list.get(i).getId()==id){ // 如果存在,就輸入新的學(xué)號(hào)、姓名、年齡、地址 System.out.println("輸入新的學(xué)號(hào):"); int idNew=sc.nextInt(); System.out.println("輸入新的姓名:"); String nameNew=sc.next(); System.out.println("輸入新的年齡:"); int ageNew=sc.nextInt(); System.out.println("輸入新的地址:"); String addrNew=sc.next(); list.set(i,new Student(idNew,nameNew,ageNew,addrNew)); System.out.println("修改成功"); return; } } if (flag==false){ System.out.println("沒有找到該學(xué)生呢,親"); } } @Override public void findOnlyStudent(ArrayList<Student> list) { Scanner sc=new Scanner(System.in); System.out.println("輸入要查找的學(xué)生id:"); int id=sc.nextInt(); for (Student stu:list){ if (stu.getId()==id){ System.out.println(stu.toString()); }else { System.out.println("你輸入的id不存在"); return; } } } }
StudentView.java
package com.zxy.bean; import java.util.ArrayList; import java.util.Scanner; public class StudentView { public static void main(String[] args) { menu(); } // 封裝一個(gè)主菜單的方法 public static void menu(){ // 數(shù)組保存學(xué)生信息,類型使用Student類型 ArrayList<Student> list=new ArrayList<>(); StudentManager stu=new StudentManager(); boolean flag=true; while (flag){ System.out.println("***** 歡迎來到學(xué)生信息管理系統(tǒng) *****"); System.out.println("******* 1.查詢所有學(xué)生 *********"); System.out.println("******* 2.查詢單個(gè)學(xué)生 *********"); System.out.println("******* 3.添加學(xué)生 *********"); System.out.println("******* 4.修改學(xué)生 *********"); System.out.println("******* 5.刪除學(xué)生 *********"); System.out.println("******* 6.退出 *********"); System.out.println("**********************************"); System.out.println("請(qǐng)輸入您要操作的序號(hào): "); // 序號(hào)選擇 int choice=new Scanner(System.in).nextInt(); switch (choice){ case 1: // 查詢學(xué)生 stu.findStudent(list); break; case 2: // 查詢單個(gè)學(xué)生 stu.findOnlyStudent(list); break; case 3: // 添加學(xué)生 stu.addStudent(list); break; case 4: // 修改學(xué)生 stu.changeStudent(list); break; case 5: // 刪除學(xué)生 stu.delStudent(list); break; case 6: // 退出程序 flag=false; System.out.println("程序退出成功,歡迎下次使用"); break; } } } }
StudentInterface.java
package com.zxy.bean; import java.util.ArrayList; public interface StudentInterface { void addStudent(ArrayList<Student> list); void delStudent(ArrayList<Student> list); void findStudent(ArrayList<Student> list); void changeStudent(ArrayList<Student> list); void findOnlyStudent(ArrayList<Student> list); }
運(yùn)行截圖
關(guān)于管理系統(tǒng)的更多內(nèi)容請(qǐng)點(diǎn)擊《管理系統(tǒng)專題》進(jìn)行學(xué)習(xí)
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。
新聞名稱:java面向?qū)ο笾畬W(xué)生信息管理系統(tǒng)
文章起源:http://jinyejixie.com/article0/gpegio.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供外貿(mào)建站、網(wǎng)站設(shè)計(jì)公司、域名注冊(cè)、網(wǎng)站策劃、Google、網(wǎng)站改版
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)