
再次選擇一個要操作的,比如在這里輸入:1 然后按照步驟執行結果為

就此我就通過思考做了一下這個小程序,首先我分成了幾個類(1)平臺入口處(是一個main函數);(2)在執行main函數之后進入操作平臺,即menu菜單,(3)然后選擇你當前是要對員工是增加,更新,還是刪除工作(PersonOperate)來操作。。。。
代碼如下:
入口處代碼:
package com.dr.demo.main;
import com.dr.demo.menu.Menu;
public class Main {
public static void main(String[] args) {
new Menu();
}
}
進入平臺的程序:
package com.dr.demo.menu;
import com.dr.demo.op.PersonOperate;
import com.dr.demo.util.InputData;
public class Menu {
InputData input = null;
public Menu(){
this.input = new InputData();
//循環出現菜單
while(true){
this.show(); //死循環
}
}
//需要定義的菜單內容
public void show(){
System.out.println("\t\t\t1、增加人員信息");
System.out.println("\t\t\t2、瀏覽人員信息");
System.out.println("\t\t\t3、修改人員信息");
System.out.println("\t\t\t4、退出人力資源系統。");
System.out.print("\n\n請選擇要使用的操作:");
int temp = input.getInt();
switch(temp){
case 1:{ // 增加人員信息
new PersonOperate().add(); //業務處理層
break;
}
case 2:{ // 瀏覽人員信息
new PersonOperate().show();
break;
}
case 3:{ // 修改人員信息
new PersonOperate().update();
break;
}
case 4:{ //退出系統
System.out.println("選擇的是退出系統");
System.out.println("系統退出!");
System.exit(1);
}
default:{
System.out.println("輸入的內容不正確");
break;
}
}
}
}
然后是PersonOperate類對的每個對象的增刪改操作:
package com.dr.demo.op;
import com.dr.demo.util.FileOperate;
import com.dr.demo.util.InputData;
import com.dr.demo.vo.Person;
public class PersonOperate {
private InputData input = null;
public PersonOperate(){
this.input = new InputData();
}
//完成具體的Person對象操作
public void add(){
//要使用輸入數據的類
String name = null;
int age = 0;
float score = 0.0f;
System.out.print("輸入姓名:");
name = this.input.getString();
System.out.print("輸入年齡:");
age = this.input.getInt();
System.out.print("輸入成績:");
score = this.input.getFloat();
//生成Person對象,把對象保存在文件中
Person p = new Person(name,age,score);
try{
new FileOperate().save(p); //io操作層
System.out.println("數據保存成功!");
}catch(Exception e){
System.out.println("數據保存失敗!");
}
}
public void show(){
//從文件中把內容讀進來
Person p = null;
try{
p = (Person) new FileOperate().read();
}catch(Exception e){
System.out.println("內容顯示失敗,請確定數據是否存在!");
}
if(p != null){
System.out.println(p);
}
}
public void update(){
//先將之前的信息查出來
Person p = null;
try{
p = (Person) new FileOperate().read();
}catch(Exception e){
System.out.println("內容顯示失敗,請確定數據是否存在!");
}
if(p != null){
String name = null;
int age = 0;
float score =0.0f;
System.out.print("請輸入新的姓名(原姓名:"+p.getName()+")");
name = this.input.getString();
System.out.print("請輸入新的年齡(原年齡:"+p.getAge()+")");
age = this.input.getInt();
System.out.print("請輸入新的成績(原成績:"+p.getScore()+")");
score = this.input.getFloat();
//信息重新設置
p.setName(name);
p.setAge(age);
p.setScore(score);
try{
new FileOperate().save(p);
System.out.println("數據更新成功!");
}catch(Exception e){
System.out.println("數據更新失敗!");
}
}
}
}