文章目录
- 实现可进可退的多级菜单系统
- 功能:添加名片、查询名片、修改名片、删除名片、保存名片、读取名片
- 要求:数据要持久化保存到磁盘上
(一)编程实现
1、创建名片实体类
- 在
net.huawei.p03.t07
包里创建Card
实体类
- 运行程序,查看结果
public class Card {
private String id;
private String name;
private String workUnit;
private String post;
private String telephone;
/**
* 无参构造方法
*/
public Card() {
}
/**
* 有参构造方法
*
* @param id
* @param name
* @param workUnit
* @param post
* @param telephone
*/
public Card(String id, String name, String workUnit, String post, String telephone) {
this.id = id;
this.name = name;
this.workUnit = workUnit;
this.post = post;
this.telephone = telephone;
}
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 getWorkUnit() {
return workUnit;
}
public void setWorkUnit(String workUnit) {
this.workUnit = workUnit;
}
public String getPost() {
return post;
}
public void setPost(String post) {
this.post = post;
}
public String getTelephone() {
return telephone;
}
public void setTelephone(String telephone) {
this.telephone = telephone;
}
@Override
public String toString() {
return "Card{" +
"id='" + id + '\'' +
", name='" + name + '\'' +
", workUnit='" + workUnit + '\'' +
", post='" + post + '\'' +
", telephone='" + telephone + '\'' +
'}';
}
}
2、创建名片管理类
- 在
net.huawei.p03.t07
包里创建CardManagement
类
(1)创建主菜单
public class CardManagement {
public static void main(String[] args) {
// 声明部分
int mc1;
Scanner sc = new Scanner(System.in);
boolean isRunning = true; // 循环控制变量
while (isRunning) {
// 绘制一级菜单
System.out.println(" 名片管理系统");
System.out.println("================");
System.out.println(" 1. 登录");
System.out.println(" 0. 退出");
System.out.println("================");
System.out.print("输入菜单编号[1,0]:");
mc1 = sc.nextInt();
// 根据用户选择进行相应的操作
switch (mc1) {
case 1:
// 调用登录方法
login();
break;
case 0:
System.out.println("谢谢使用~再见~");
isRunning = false; // 结束循环
break;
default:
System.out.println("输入的菜单编号有误!");
}
}
}
}
- 程序报错,因为在菜单项1里要调用的登录方法login()尚未定义
(2)创建登录方法
在CardManagement
类里创建login()
方法
/**
* 登录方法
*/
private static void login() {
String username, password;
Scanner sc = new Scanner(System.in);
System.out.print("用户名:");
username = sc.next();
System.out.print("密 码:");
password = sc.next();
if (username.equals("howard") && password.equals("903213")) {
System.out.println("登录成功~");
// 调用名片管理方法
cardManagement();
} else {
System.out.println("用户名或密码有误,登录失败~");
}
}
-程序报错,因为在login()
方法要调用的名片管理方法cardManagement()
尚未定义
(3)创建名片管理方法
- 在
CardManagemen
类里创建cardManagement()
方法
/**
* 名片管理方法
*/
private static void cardManagement() {
int mc2;