java小程序数组版电话本1.0版本(有问题尚未解决)

来源:互联网 发布:手机上怎么找淘宝客服 编辑:程序博客网 时间:2024/06/16 19:40

主函数:

package www.telephone.java;import java.util.Scanner;/* * 电话簿主要实现功能: * 1.添加 2.删除 3.修改 4.查询所有 5.根据姓名查询 6.退出 * */public class TelephoneNumberMain {public static void main(String[] args) {TelephoneBook telephoneBook = new TelephoneBook();telephoneBook.choose();}}
方法主体,电话本增删改查:

package www.telephone.java;import java.util.Scanner;import com.sun.org.apache.bcel.internal.generic.INEG;public class TelephoneBook {Contacts[] c = new Contacts[50];TelephoneNumberMain telephoneNumberMain = new TelephoneNumberMain();int num; // 联系人个数// 添加联系人public void choose() {Scanner sc = new Scanner(System.in);System.out.println("----------------电话本管理系统----------------");System.out.println("1.添加 2.删除 3.修改 4.查询所有 5.根据姓名查询 0.退出");System.out.println("----------------电话本管理系统----------------\n 请选择操作:");String a = sc.next();switch (a) {case "1":pAdd();break;case "2":pDelete();break;case "3":pChange();break;case "4":selectAll();break;case "5":selectByName();break;case "0":System.out.println("感谢你的使用。");System.exit(0);break;default:System.out.println("输入指令错误!请重新输入!");break;}}public void pAdd() {System.out.println("------添加联系人------");System.out.println("请输入相关信息:");Contacts con = new Contacts();Scanner sc = new Scanner(System.in);System.out.print("姓名:");String name = sc.nextLine();con.setName(name);System.out.print("性别:");String sex = sc.nextLine();con.setSex(sex.charAt(0));System.out.print("年龄:");int age = sc.nextInt();con.setAge(age);sc = new Scanner(System.in);System.out.print("电话:");String phone = sc.nextLine();con.setPhoneNumber(phone);System.out.print("QQ:");int qqNumber = sc.nextInt();con.setQqNumber(qqNumber);sc = new Scanner(System.in);System.out.print("地址:");String address = sc.nextLine();con.setAddress(address);System.out.println(con);for (int num = 0; num < c.length; num++) {if (c[num] == null) {c[num] = con;break;} else {continue;}}// c[num++] = contacts;System.out.println("插入成功");System.out.println(con.toString());choose();}// 删除联系人public void pDelete() {System.out.println("------删除联系人------");System.out.println("请输入你要删除的联系人姓名:");Scanner sc = new Scanner(System.in);String s = sc.next();for (int num = 0; num < c.length; num++) {if (c[num] != null) {if (c[num].getName().equals(s)) {System.out.println("你要删除的是:" + c[num].toString());System.out.println("你确定要删除吗?\n [1]确定,[0]取消");int s2 = sc.nextInt();if (s2 == 1) {c[num] = null;System.out.println("删除成功!");try {Thread.sleep(2000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}choose();} else if (sc.next().equals("n")) {choose();} else {System.out.println("输入指令不正确,请重新输入!");pDelete();}} else {if (num != c.length - 1) {continue;} else {System.out.println("你输入的姓名不存在!请重新输入!");pDelete();}}} else {if (num != c.length - 1) {continue;} else {System.out.println("你输入的姓名不存在!请重新输入!");pDelete();}}}}public void pChange() {Scanner sc = new Scanner(System.in);System.out.println("--------------修改电话本-------------");System.out.println("请输入你要修改的姓名:");String s = sc.next();out: for (int num = 0; num < c.length; num++) {if (c[num] != null) {if (c[num].getName().equals(s)) {System.out.println("你要修改的是:" + c[num].toString());System.out.println("请重新输入相关信息:");System.out.print("姓名:");String name = sc.next();c[num].setName(name);System.out.print("性别:");String sex = sc.next();c[num].setSex(sex.charAt(0));System.out.print("年龄:");int age = sc.nextInt();c[num].setAge(age);System.out.print("电话:");String dianhua = sc.next();c[num].setPhoneNumber(dianhua);System.out.print("QQ:");int qqNumber = sc.nextInt();c[num].setQqNumber(qqNumber);System.out.print("地址:");String address = sc.next();c[num].setAddress(address);;System.out.print("修改成功!");System.out.println("修改后为:" + c[num].toString());try {Thread.sleep(2000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}choose();} else {if (num != c.length - 1) {continue out;} else {System.out.println("你输入的姓名不存在!请重新输入!");pChange();}}} else {if (num != c.length - 1) {continue out;} else {System.out.println("你输入的姓名不存在!请重新输入!");pChange();}}}}// 查询所有方法public void selectAll() {System.out.println(c[1]);System.out.println("--------------所有电话信息---------------");for (int num = 0; num < c.length; num++) {if (c[num] != null) {System.out.println(c[num].toString());}}try {Thread.sleep(2000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}choose();}public void selectByName() {Scanner sc = new Scanner(System.in);System.out.println("------------------根据名字查询----------------");System.out.println("请输入你要查找的名字:");String s = sc.next();for (int num = 0; num < c.length; num++) {if (c[num] != null) {if (c[num].getName().equals(s)) {System.out.println("查询结果为:" + c[num].toString());try {Thread.sleep(2000);} catch (InterruptedException e) {// TODO Auto-generated catch blocke.printStackTrace();}choose();break;} else {if (num != c.length - 1) {continue;} else {System.out.println("你输入的姓名不存在!请重新输入!");selectByName();}}} else {if (num != c.length - 1) {continue;} else {System.out.println("你输入的姓名不存在!请重新输入!");selectByName();}}}}}


构建内部类实现getset方法以及toString方法:
package www.telephone.java;public class Contacts {TelephoneBook telephoneBook = new TelephoneBook();private String name;// 联系人姓名private char sex;// 联系人性别private int age; // 联系人年龄private String phoneNumber; // 联系人电话private int qqNumber;// 联系人QQ号private String address;// 联系人地址public String getName() {return name;}public void setName(String name) {this.name = name;}public char getSex() {return sex;}public void setSex(char sex) {if (sex != '男' && sex != '女') {System.out.println("请输入‘男’或‘女’。");telephoneBook.pAdd();} else {this.sex = sex;}}public int getAge() {return age;}public void setAge(int age) {if (age >= 0 && age <= 150) {this.age = age;} else {System.out.println("请输入正确的年龄");telephoneBook.pAdd();}}public String getPhoneNumber() {return phoneNumber;}public void setPhoneNumber(String phoneNumber) {this.phoneNumber = phoneNumber;}public int getQqNumber() {return qqNumber;}public void setQqNumber(int qqNumber) {this.qqNumber = qqNumber;}public String getAddress() {return address;}public void setAddress(String address) {this.address = address;}@Overridepublic String toString() {return "电话簿 [姓名=" + name + ", 性别=" + sex + ", 年龄=" + age + ", 电话号码=" + phoneNumber + ", QQ号=" + qqNumber+ ", 地址=" + address + "]";}}



原创粉丝点击