<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
最近學了java基礎後對以前不會寫的作業深有感觸,想起以前各種在網上找資料找別人的程式碼參考,所以今天特地寫了了簡單的基於控制檯的學生資訊管理系統供還在學基礎的同學參考,寫的有問題的地方也希望能指出來,好了,下面開始進入正題。
我使用的是idea編譯器和1.8的jdk版本,有使用1.7以下jdk版本的同學執行會報錯,解決方法是把ArrayLis<Student> arrayList=new Array<>();改成 ArrayLis<Student> arrayList=new Array<Student>(),下面開始講解學生資訊管理系統的實現過程。
學生資訊管理系統主要是實現讓老師登入賬號(賬號和密碼我設定的都是“123”,你們也可以改成其他的字串)後可以對學生進行增刪改查的操作和檢視所有學生的資訊,所以我各自定義了一個方法來實現它的功能。
首先定義一個學生類Student.java,關於toString是重寫了父類別也就是Object的方法,是用於方便檢視結果的,學生的屬性可以按需求新增多個,這裡我為了方便只寫了四個。
public class Student { //學號 private int sno; //姓名 private String name; //性別 private String xes; //年齡 private int age; //建立get/set方法 public int getSno() { return sno; } public void setSno(int sno) { this.sno = sno; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getXes() { return xes; } public void setXes(String xes) { this.xes = xes; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } //重寫toString方法方便列印 @Override public String toString() { return "Student{" + "sno=" + sno + ", name='" + name + ''' + ", xes='" + xes + ''' + ", age=" + age + '}'; } }
然後定義一個結構類Structure.java,把需要實現的功能方法寫出來。
import java.util.ArrayList; import java.util.Scanner; /** * 老師進行登入操作後(老師的賬號密碼固定為123) * 才能對學生進行增刪改查 */ public class Structure { //用來給學生學號賦值自增 static int i=1; //建立ArrayList集合物件用來存放學生物件 ArrayList<Student> arrayList=new ArrayList<>(); Scanner scanner=new Scanner(System.in); public void enter(){ System.out.print("請輸入使用者名稱:"); if (scanner.next().equals("123")){ System.out.print("請輸入密碼:"); if (scanner.next().equals("123")){ System.out.println("登入成功!"); }else{ System.out.println("密碼錯誤!請重新登入"); enter(); } }else { System.out.println("使用者名稱錯誤!請重新登入"); enter(); } } //增加學生資訊 public void add(){ //建立學生物件 Student student=new Student(); //System.out.print("學生ID自增"); student.setSno(i); System.out.print("學生姓名:"); student.setName(scanner.next()); System.out.print("性別:"); student.setXes(scanner.next()); System.out.print("年齡:"); student.setAge(scanner.nextInt()); //把學生物件存入集合中 arrayList.add(student); i++; } //檢視所有學生資訊 public void print(){ if (arrayList.size()==0){ System.out.println("沒有學生!!!"); }else { //使用增強for迴圈遍歷集合 for (Student student:arrayList){ System.out.println(student.toString()); } } } //通過學號查詢指定的學生資訊 public void inquiry(){ if (arrayList.size()==0){ System.out.println("沒有學生!!!"); }else { System.out.print("請輸入想要查詢的學生的學號:"); for (Student student:arrayList){ if (student.getSno()==scanner.nextInt()){ System.out.println(student.toString()); } } } } //刪除指定學生的資訊 public void delete(){ if (arrayList.size()==0){ System.out.println("沒有學生!!!"); }else { System.out.print("請輸入想要刪除的學生的學號:"); for (int i=0;i<=arrayList.size();i++){ if (arrayList.get(i).getSno()==scanner.nextInt()){ arrayList.remove(i); System.out.println("刪除成功!"); } } } } //修改指定學生的資訊 public void revisesp(){ if (arrayList.size()==0){ System.out.println("沒有學生!!!"); }else { System.out.print("請輸入想要修改的學生的學號:"); for (Student student:arrayList){ if (student.getSno()==scanner.nextInt()){ revisesp01(student); System.out.println("修改成功!"); } } } } public void revisesp01(Student student) { System.out.println("請根據序號選擇指令"); System.out.println("1.修改姓名"); System.out.println("2.修改性別"); System.out.println("2.修改年齡"); switch (scanner.nextInt()){ case 1: student.setName(scanner.next()); break; case 2: student.setXes(scanner.next()); break; case 3: student.setAge(scanner.nextInt()); break; } } }
最後建立一個測試類Test.java用來測試功能的實現
import java.util.Scanner; public class Test { Structure structure=new Structure(); static Scanner scanner=new Scanner(System.in); public static void main(String[] args) { Test test=new Test(); test.a(); } public void a(){ System.out.println("老師登入(賬號密碼固定123/123)"); structure.enter(); while (true){ print(); switch (scanner.nextInt()){ case 1: structure.add(); break; case 2: structure.print(); break; case 3: structure.inquiry(); break; case 4: structure.delete(); break; case 5: structure.revisesp(); break; case 0: return; default: System.out.println("請輸入正確的指令!"); } } } public void print(){ 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("0.退出"); } }
最後我們就順利的完成了一個簡單的學生管理系統,能獨立完成這個對我們鞏固基礎知識是能起到一定的幫助的。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援it145.com。
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45