<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
本文範例為大家分享了java實現學生宿舍管理系統的具體程式碼,供大家參考,具體內容如下
學生類程式碼
Student.java
package dormitory; public class Student { private String id; private String name; private String sex; private String dormid; public String getId() { return id; } public void setId(String id) { this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getDormid() { return dormid; } public void setDormid(String dormid) { this.dormid = dormid; } }
主操作程式碼
IntailStudent.java
package dormitory; import java.awt.List; import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.FileWriter; import java.io.IOException; import java.util.ArrayList; import java.util.Iterator; import java.util.Scanner; import javax.print.DocFlavor.INPUT_STREAM; import javax.swing.event.ListSelectionEvent; import org.omg.PortableInterceptor.IORInterceptor; public class InitailStudent { private static int n=0; private static Student[] stu=new Student[100]; //主函數 public static void main(String[] args) throws IOException { boolean a=false; boolean b=false; InitailStudent student=new InitailStudent(); student.judge(a, b); } //登入函數 private void judge(boolean a, boolean b) throws IOException { do { System.out.println("歡迎進入登入頁面!"); Scanner input=new Scanner(System.in); System.out.println("請輸入賬號:"); String account=input.nextLine(); System.out.println("請輸入密碼:"); String code=input.nextLine(); a=account.equals("admin"); b=code.equals("admin"); } while(!(a==true&&b==true)); Menu(); } //系統選單頁面 private void Menu() throws IOException{ Scanner input=new Scanner(System.in); System.out.println("------ 歡迎進入宿舍管理系統 ------"); System.out.println("------ 請選擇下列操作 ------"); System.out.println("--- 1.顯示所有學生資訊 ---"); //Show() System.out.println("--- 2.查詢學生資訊 ---"); //Find() System.out.println("--- 3.增加學生資訊 ---"); //Add() System.out.println("--- 4.修改學生資訊 ---"); //Renew() System.out.println("--- 5.刪除學生資訊 ---"); //Delete() System.out.println("--- 0.退出系統 ---"); System.out.println("請輸入1~5:"); int a=input.nextInt(); while(a<0||a>5) { System.out.println("輸入有誤,請重新輸入:"); a=input.nextInt(); } switch (a) { case 1: Show(); break; case 2: Find(); break; case 3: Add(); break; case 4: Renew(); break; case 5: Delete(); break; case 0: System.out.println("成功退出系統!"); System.exit(0); break; } } //顯示學生的全部資訊 private void Show() throws IOException{ System.out.println("您總錄入的資訊如下:"); System.out.println("*****************************"); BufferedReader br=new BufferedReader(new FileReader("student.txt")); String line; while((line=br.readLine())!=null){ System.out.println(line); } br.close(); System.out.println("nr"); System.out.println("此次錄入的資訊為"); System.out.println("*****************************"); int i; for(i=0;i<n;i++) { System.out.println("學號:"+stu[i].getId()+"t姓名:"+stu[i].getName()+"t性別:"+stu[i].getSex()+"t宿舍號:"+stu[i].getDormid()); } System.out.println("返回主選單"); Menu(); } //查詢學生資訊 private void Find() throws IOException{ ArrayList<ArrayList<String>> lists = new ArrayList<>(); BufferedReader br=new BufferedReader(new FileReader("student.txt")); String line; ArrayList<String> list = new ArrayList<>(); ArrayList<String> validlist = new ArrayList<>(); while((line=br.readLine())!=null){ list.add(line.toString()); } br.close(); for(int i = 0;i<list.size();i++) if(i!=0&&list.get(i-1).startsWith("學號")){ validlist.add(list.get(i)); } for (String string : validlist) { String[] split = string.split(" "); ArrayList<String> tempString = new ArrayList<>(); for (String string2 : split) { tempString.add(string2); } lists.add(tempString); } System.out.println("共有"+lists.size()+"個學生資訊"); String[][] stu1=new String[lists.size()][4]; for(int i=0;i<lists.size();i++) for(int j=0;j<4;j++){ stu1[i][j]=lists.get(i).get(j); } System.out.println("請輸入學生的學號:"); Scanner input=new Scanner(System.in); String d=input.next(); for(int i=0;i<stu1.length;i++) { if(d.equals(stu1[i][0])) { System.out.println("查詢成功,以下為該學生的資訊"); System.out.println("學號:"+stu1[i][0]+"t姓名:"+stu1[i][1]+"t性別:"+stu1[i][2]+"t宿舍號:"+stu1[i][3]); System.out.println("是否繼續查詢,否返回選單,是Y否N"); String cho=input.next(); char ch=cho.charAt(0); while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') { System.out.println("輸入有誤!請重新輸入:"); cho=input.next(); ch=cho.charAt(0); } while(ch=='Y'||ch=='y'){ Find(); } while(ch=='N'||ch=='n'){ Menu(); } } } System.out.println("沒有找到該學生,是繼續輸入,否返回選單,是Y否N"); String cho=input.next(); char ch=cho.charAt(0); while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') { System.out.println("輸入有誤!請重新輸入:"); cho=input.next(); ch=cho.charAt(0); } while(ch=='Y'||ch=='y'){ Find(); } while(ch=='N'||ch=='n'){ Menu(); } } //增加一個學生 private void Add() throws IOException{ String id; String dormid; String name; String sex; String cho; char ch; stu[n]=new Student(); Scanner input=new Scanner(System.in); if(n==0) { System.out.println("您此次還沒有錄入任何資訊,是否錄入,是Y否N"); cho=input.next(); ch=cho.charAt(0); while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') { System.out.println("輸入有誤!請重新輸入:"); cho=input.next(); ch=cho.charAt(0); } while(ch=='Y'||ch=='y'){ break; } while(ch=='N'||ch=='n'){ Menu(); } } FileWriter fw=new FileWriter("student.txt",true); fw.write("rn"); fw.write("學號 姓名 性別 宿舍號 rn"); System.out.println("請輸入學生的學號:"); id=input.next(); stu[n].setId(id); fw.write(stu[n].getId()+" "); System.out.println("請輸入學生的姓名:"); name=input.next(); stu[n].setName(name); fw.write(stu[n].getName()+" "); System.out.println("請輸入學生的性別:"); sex=input.next(); stu[n].setSex(sex); fw.write(stu[n].getSex()+" "); System.out.println("請輸入學生的宿舍號:"); dormid=input.next(); stu[n].setDormid(dormid); fw.write(stu[n].getDormid()+" "); n++; fw.close(); System.out.println("是否繼續新增學生?否返回主選單,是Y否N"); cho=input.next(); ch=cho.charAt(0); while(ch!='Y'&&ch!='y'&&ch!='N'&&ch!='n') { System.out.println("輸入有誤!請重新輸入:"); cho=input.next(); ch=cho.charAt(0); } while(ch=='Y'||ch=='y'){ Add(); } while(ch=='N'||ch=='n'){ Menu(); } } //修改學生資訊 private void Renew() throws IOException{ ArrayList<ArrayList<String>> lists = new ArrayList<>(); BufferedReader br=new BufferedReader(new FileReader("student.txt")); String line; ArrayList<String> list = new ArrayList<>(); ArrayList<String> validlist = new ArrayList<>(); while((line=br.readLine())!=null){ list.add(line.toString()); } br.close(); for(int i = 0;i<list.size();i++) if(i!=0&&list.get(i-1).startsWith("學號")){ validlist.add(list.get(i)); } for (String string : validlist) { String[] split = string.split(" "); ArrayList<String> tempString = new ArrayList<>(); for (String string2 : split) { tempString.add(string2); } lists.add(tempString); } String[][] stu1=new String[lists.size()][4]; for(int i=0;i<lists.size();i++) for(int j=0;j<4;j++){ stu1[i][j]=lists.get(i).get(j); } int temp=0; boolean flag=false; System.out.println("請輸入要修改學生的學號:"); Scanner input=new Scanner(System.in); String d=input.next(); for(int i=0;i<stu1.length;i++) { while(d.equals(stu1[i][0])) { temp=i; flag=true; break; } } if(!flag) { System.out.println("輸入的學號有誤,未找到該學生,是否再次進入修改,是Y,否N"); String cho1=input.next(); char ch1=cho1.charAt(0); while (ch1!='N'&&ch1!='n'&&ch1!='Y'&&ch1!='y') { System.out.println("輸入無效,請重新輸入:"); cho1=input.next(); ch1=cho1.charAt(0); } if (ch1=='y'||ch1=='Y'){ Renew(); } if (ch1=='N'||ch1=='n'){ System.out.println("返回主選單"); Menu(); } } else { System.out.println("您要修改的學生的資訊如下:"); System.out.println("學號:"+stu1[temp][0]+"t姓名:"+stu1[temp][1]+"t性別:"+stu1[temp][2]+"t宿舍號:"+stu1[temp][3]); System.out.println("請以下選擇要修改的內容:"); System.out.println("------ 1.姓名 ------"); System.out.println("------ 2.性別 ------"); System.out.println("------ 3.宿舍號 ------"); Scanner input1=new Scanner(System.in); int a=input1.nextInt(); if(a==1) { System.out.println("請輸入新的姓名:"); String name=input1.next(); stu1[temp][1]=name; FileWriter fw1=new FileWriter("student.txt"); fw1.write(" "); fw1.close(); FileWriter fw=new FileWriter("student.txt",true); fw.write("rn"+" "+"學生資訊表rn"); for(int i=0;i<stu1.length;i++) { fw.write("rn學號 姓名 性別 宿舍號 rn"); fw.write(stu1[i][0]+" "); fw.write(stu1[i][1]+" "); fw.write(stu1[i][2]+" "); fw.write(stu1[i][3]+" "); } fw.close(); System.out.println("修改成功!"); System.out.println("還要繼續修改嗎?是繼續修改,否返回主選單,是Y否N"); String cho1=input1.next(); char ch1=cho1.charAt(0); while (ch1!='N'&&ch1!='n'&&ch1!='Y'&&ch1!='y') { System.out.println("輸入無效,請重新輸入:"); cho1=input.next(); ch1=cho1.charAt(0); } if (ch1=='y'||ch1=='Y'){ Renew(); } if (ch1=='N'||ch1=='n'){ System.out.println("返回主選單"); Menu(); } } else if(a==2) { System.out.println("請輸入新的性別:"); String sex=input1.next(); stu1[temp][2]=sex; FileWriter fw1=new FileWriter("student.txt"); fw1.write(" "); fw1.close(); FileWriter fw=new FileWriter("student.txt",true); fw.write("rn"+" "+"學生資訊表rn"); for(int i=0;i<stu1.length;i++) { fw.write("rn學號 姓名 性別 宿舍號 rn"); fw.write(stu1[i][0]+" "); fw.write(stu1[i][1]+" "); fw.write(stu1[i][2]+" "); fw.write(stu1[i][3]+" "); } fw.close(); System.out.println("修改成功!"); System.out.println("還要繼續修改嗎?是繼續修改,否返回主選單,是Y否N"); String cho1=input1.next(); char ch1=cho1.charAt(0); while (ch1!='N'&&ch1!='n'&&ch1!='Y'&&ch1!='y') { System.out.println("輸入無效,請重新輸入:"); cho1=input.next(); ch1=cho1.charAt(0); } if (ch1=='y'||ch1=='Y'){ Renew(); } if (ch1=='N'||ch1=='n'){ System.out.println("返回主選單"); Menu(); } } else if(a==3) { System.out.println("請輸入新的宿舍號:"); String dormid=input1.next(); stu1[temp][3]=dormid; FileWriter fw1=new FileWriter("student.txt"); fw1.write(" "); fw1.close(); FileWriter fw=new FileWriter("student.txt",true); fw.write("rn"+" "+"學生資訊表rn"); for(int i=0;i<stu1.length;i++) { fw.write("rn學號 姓名 性別 宿舍號 rn"); fw.write(stu1[i][0]+" "); fw.write(stu1[i][1]+" "); fw.write(stu1[i][2]+" "); fw.write(stu1[i][3]+" "); } fw.close(); System.out.println("修改成功!"); System.out.println("還要繼續修改嗎?是繼續修改,否返回主選單,是Y否N"); String cho1=input1.next(); char ch1=cho1.charAt(0); while (ch1!='N'&&ch1!='n'&&ch1!='Y'&&ch1!='y') { System.out.println("輸入無效,請重新輸入:"); cho1=input.next(); ch1=cho1.charAt(0); } if (ch1=='y'||ch1=='Y'){ Renew(); } if (ch1=='N'||ch1=='n'){ System.out.println("返回主選單"); Menu(); } } else { System.out.println("輸入有誤,請重新輸入:"); Renew(); } } } //刪除學生資訊 private void Delete() throws IOException{ ArrayList<ArrayList<String>> lists = new ArrayList<>(); BufferedReader br=new BufferedReader(new FileReader("student.txt")); String line; ArrayList<String> list = new ArrayList<>(); ArrayList<String> validlist = new ArrayList<>(); while((line=br.readLine())!=null){ list.add(line.toString()); } br.close(); for(int i = 0;i<list.size();i++) if(i!=0&&list.get(i-1).startsWith("學號")){ validlist.add(list.get(i)); } for (String string : validlist) { String[] split = string.split(" "); ArrayList<String> tempString = new ArrayList<>(); for (String string2 : split) { tempString.add(string2); } lists.add(tempString); } String[][] stu1=new String[lists.size()][4]; for(int i=0;i<lists.size();i++) for(int j=0;j<4;j++){ stu1[i][j]=lists.get(i).get(j); } int temp=0; boolean flag=true; System.out.println("請輸入你想要刪除該學生的學號:"); Scanner input2=new Scanner(System.in); String d=input2.next(); for(int i=0;i<stu1.length;i++) { while(d.equals(stu1[i][0])) { temp=i; flag=true; break; } } if(!flag) { System.out.println("輸入的學號有誤,未找到該學生,再次進入刪除,請重新輸入:"); String cho1=input2.next(); char ch1=cho1.charAt(0); while (ch1!='N'&&ch1!='n'&&ch1!='Y'&&ch1!='y') { System.out.println("輸入無效,請重新輸入:"); cho1=input2.next(); ch1=cho1.charAt(0); } if (ch1=='y'||ch1=='Y'){ Delete(); } if (ch1=='N'||ch1=='n'){ System.out.println("返回主選單"); Menu(); } } else{ System.out.println("您要刪除的學生的資訊如下:"); System.out.println("學號:"+stu1[temp][0]+"t姓名:"+stu1[temp][1]+"t性別:"+stu1[temp][2]+"t宿舍號:"+stu1[temp][3]); for (int i=temp;i<stu1.length-1;i++) { stu1[i]=stu1[i+1]; } FileWriter fw1=new FileWriter("student.txt"); fw1.write(" "); fw1.close(); FileWriter fw=new FileWriter("student.txt",true); fw.write("rn"+" "+"學生資訊表rn"); for(int i=0;i<stu1.length-1;i++) { fw.write("rn學號 姓名 性別 宿舍號 rn"); fw.write(stu1[i][0]+" "); fw.write(stu1[i][1]+" "); fw.write(stu1[i][2]+" "); fw.write(stu1[i][3]+" "); } fw.close(); System.out.println("刪除該學生資訊成功!"); System.out.println("---------------------"); } System.out.println("還要繼續刪除嗎?是繼續刪除,否返回主選單,是Y否N"); String cho2=input2.next(); char ch2=cho2.charAt(0); while (ch2!='N'&&ch2!='n'&&ch2!='Y'&&ch2!='y') { System.out.println("輸入無效,請重新輸入:"); cho2=input2.next(); ch2=cho2.charAt(0); } if (ch2=='y'||ch2=='Y'){ Delete(); } if (ch2=='N'||ch2=='n'){ System.out.println("返回主選單"); Menu(); } } }
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援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