做了一个控制台的电话本管理系统,请各位大佬提些建议,谢谢。
PublicClass类–>封装类
package com.java.demo2;
public class PublicClass {
private String name;
private String sex;
private int age;
private String phoneNumber;
private String QQ;
private String address;
public PublicClass() {
super();
}
public PublicClass(String name, String sex, int age, String phoneNumber, String qQ, String address) {
super();
this.name = name;
this.sex = sex;
this.age = age;
this.phoneNumber = phoneNumber;
QQ = qQ;
this.address = address;
}
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 int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public String getQQ() {
return QQ;
}
public void setQQ(String qQ) {
QQ = qQ;
}
public String getAddress() {
return address;
}
public void setAddress(String address) {
this.address = address;
}
public void show() {
System.out.println("姓名=" + name + ", 性别=" + sex + ", 年龄=" + age + ", 电话号码=" + phoneNumber + ", QQ="
+ QQ + ", 地址=" + address );
}
}
Caozuo类–>实现界面
package com.java.demo2;
import java.util.Scanner;
public class TelephoneNumber {
static Scanner sc = new Scanner(System.in);
static PublicClass[] pc = new PublicClass[100];
static int maxIdex = -1;
public static void Caozuo() {
System.out.println("--------------------电话本管理系统--------------------");
System.out
.println("1.添加" + "\t" + "2.删除" + "\t" + "3.修改" + "\t" + "4.查询所有" + "\t" + "5.根据姓名查询" + "\t" + "0.退出");
System.out.println("--------------------电话本管理系统--------------------");
System.out.println("请选择业务(输入0-5)");
int number = sc.nextInt();
switch (number) {
case 0:
System.out.println("感谢使用");
System.exit(0);
case 1:
addNumber();
break;
case 2:
deleteNumber();
break;
case 3:
updateNumber();
break;
case 4:
selectAllNumber();
break;
case 5:
selectNameNumber();
break;
default:
System.out.println("输入错误!!!");
Caozuo();
break;
}
}
private static void addNumber() {
PublicClass publiclass = add();
pc[++maxIdex]=publiclass;
System.out.println("添加成功");
Caozuo();
}
private static PublicClass add() {
System.out.println("---------添加电话本---------");
System.out.print("姓名:");
String name = sc.next();
System.out.print("性别:");
String sex = sc.next();
System.out.print("年龄:");
int age = sc.nextInt();
System.out.print("电话:");
String phoneNumber = sc.next();
System.out.print("QQ:");
String qq = sc.next();
System.out.print("地址:");
String address = sc.next();
PublicClass publiclass = new PublicClass(name, sex, age, phoneNumber, qq, address);
return publiclass;
}
private static void selectNameNumber() {
System.out.println("---------按姓名查询---------");
System.out.println("请输入要查询的姓名");
String name = sc.next();
int index = getIndexByName(name);
System.out.println(pc[index]);
Caozuo();
}
private static void selectAllNumber() {
System.out.println("---------查询所有---------");
for (int i = 0; i <= maxIdex; i++) {
if (pc[i] != null) {
pc[i].show();
}
}
Caozuo();
}
private static void updateNumber() {
System.out.println("---------修改电话簿---------");
System.out.println("请输入要修改的姓名");
String name = sc.next();
int index = getIndexByName(name);
System.out.println(pc[index]);
System.out.println("请输入下列信息:");
System.out.println("姓名:");
name = sc.next();
System.out.println("性别:");
String sex = sc.next();
System.out.println("年龄:");
int age = sc.nextInt();
System.out.println("电话号码:");
String phoneNumber = sc.next();
System.out.println("QQ:");
String qq = sc.next();
System.out.println("地址:");
String address = sc.next();
PublicClass pcl = new PublicClass(name, sex, age, phoneNumber, qq, address);
pc[index] = pcl;
pcl.show();
System.out.println("修改成功");
Caozuo();
}
public static int getIndexByName(String name) {
for (int i = 0; i <= maxIdex; i++) {
if (name.equals(pc[i].getName())) {
// 找到了
return i;
}
}
return -1;
}
private static void deleteNumber() {
System.out.println("---------删除电话本---------");
System.out.println("请输入要删除的姓名:");
String name = sc.next();
int index = getIndexByName(name);
if (index == -1)
System.out.println("没有此人");
for (int i = index; i <= maxIdex; i++) {
pc[i] = pc[i + 1];
}
maxIdex--;
System.out.println("删除成功");
Caozuo();
}
public static void main(String[] args) {
Caozuo();
}
}
效果图