java实现电话本系统(java电话号码查询系统)

网友投稿 852 2022-07-27


本文实例为大家分享了java模拟实现电话本系统的具体代码,供大家参考,具体内容如下

java 模拟 电话本系统 (基础版)

需求:注意的是,联系人的id是自增长的

实现的功能:

java综合编程练习:基本的增删改查,对于逻辑数据的过滤,这块做了简单的处理,暂不优化

ContactPerson.java

package com.demo4;

/**1、新增一个联系人,联系人的编号从1开始自动增长,姓名,性别,年龄,手机号,

身份证号由用户从控制台录入*/

public class ContactPerson {

/*这里用静态标识,di为自增长*/

private static int count=0;

private int id;

private String name;

private String sex;

private int age;

private String phoneNo;

private String IdCard;

public ContactPerson(){}

public ContactPerson(String name, String sex, int age, String phoneNo, String idCard) {

this.name = name;

this.sex = sex;

this.age = age;

this.phoneNo = phoneNo;

IdCard = idCard;

/*静态id为自增长*/

this.id = ++count;

}

public int getId() {

return 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 int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

public String getPhoneNo() {

return phoneNo;

}

public void setPhoneNo(String phoneNo) {

this.phoneNo = phoneNo;

}

public String getIdCard() {

return IdCard;

}

public void setIdCard(String idCard) {

IdCard = idCard;

}

public static int getCount() {

return count;

}

public void show() {

System.out.println(

"【 编号 =" + id + " 姓名=" + name + ", 性别=" + sex + ", 年龄=" + age + ", 电话号码=" + phoneNo + ", 证件号=" + IdCard +" 】" );

}

}

PhoneBook.java

package com.demo4;

import java.util.Arrays;

public class PhoneBook {

private ContactPerson[] contactPersons ;

private int size;

public PhoneBook(){

contactPersons= new ContactPerson[20];

size=0;

}

//1. 新增一个联系人

public void addContPerson(String name,String sex,int age, String phoneNo, String IdCard){

ContactPerson person = new ContactPerson(name,sex,age,phoneNo,IdCard);

contactPersons[size++]= person;

System.out.println("添加成功");

}

// 2.查找指定的联系人

public ContactPerson[] findByName(String name){

ContactPerson[] newContPersons = new ContactPerson[size];

int length=0;

int ihttp://;

for(i=0; i

if(contactPersons[i].getName().equals(name)){

newContPersons[length++] =contactPersons[i];

}

i++;

}

newContPersons = Arrays.copyOf(newContPersons,length);

return newContPersons;

}

//3.查找所有的联系人

public void findAll(){

for(int i=0; i

contactPersons[i].show();

}

}

//4. 修改联系人信息

public void modfyMesById(int id,String phoneNo){

int i;

for(i=0; i

if(contactPersons[i].getId()==id){

contactPersons[i].setPhoneNo(phoneNo);

System.out.println("修改成功");

break;

}

}

if(i>=size){

System.out.println("修改有误");

}

}

//5.删除联系人信息

public void delContPerson(int id) {

int i;

for(i=0; i

if (contactPersons[i].getId() == id) {

break;

}

}

if(i>=size){

System.out.println("删除有误");

}else{

for(int j=size-2; j>=i; j++){

contactPersons[j]=contactPersons[j+1];

}

size--;

System.out.println("删除成功");

}

}

}

test.java

package com.demo4;

import java.util.Scanner;

public class test {

public static void main(String[] args) {

/* 1. 新增一个联系人

2.查找指定的联系人

3.查找所有的联系人

4. 修改联系人信息

5.删除联系人信息

6.退出系统*/

PhoneBook phoneBook = new PhoneBook();

System.out.println("==================电话本系统===================");

Scanner sc =new Scanner(System.in);

prof: while(true) {

while (true) {

System.out.println("---------------------------------------------------------");

System.out.println("1,【添加联系人】 2,【查找联系人】 3,【浏览所有】");

System.out.println("4,【修改联系人】 5,【删除联系人】 6,【退出系统】");

System.out.println("----------------------------------------------------------");

System.out.print("选择操作【标号】:");

if(!sc.hasNextInt()){

sc.next();

System.out.println("输入有序,【重新】输入");

continue ;

}

int num = sc.nextInt();

switch (num) {

case 1:

System.out.println("进入【添加】操作:");

System.out.println("添加操作");

System.out.print("输入姓名:");String name =sc.next();

/*这里对性别做了简单限制,男或者女,其他输入暂且不做判断,可以自行优化*/

while(true) {

System.out.print("输入性别:");

String sex = sc.next();

if (!("男".equals(sex) || "女".equals(sex))) {

System.out.println("输入有误,【重新】输入");

continue;

}

System.out.print("输入年龄: ");Integer age = sc.nextInt();

System.out.print("输入电话号码:");String phoneNo = sc.next();

System.out.print("输入证件号:");String idCard = sc.next();

phoneBook.addContPerson(name,sex,age,phoneNo,idCard);

break;

}

case 2:

System.out.println("进入【查询】操作:");

System.out.print("输入联系人【姓名】");String fname = sc.next();

ContactPerson[] contactPeoples=phoneBook.findByName(fname);

if(contactPeoples!=null){

for(ContactPerson contactPeople : contactPeoples){

contactPeople.show();

}

System.out.println("查询成功");

}else{

System.out.println("暂无信息");

}

break;

case 3:

System.out.println("进入【浏览】操作:");

phoneBook.findAll();

break;

case 4:

System.out.println("进入【修改】操作:");

System.out.print("输入修改的【标号】: ");

int id =sc.nextInt();

System.out.print("将【手机号】修改成: ");

String newphoneNo = sc.next();

phoneBook.modfyMesById(id,newphoneNo);

break;

case 5:

System.out.println("进入【删除】操作:");

while(true) {

System.out.println("输入要删除标【标号】:");

/*这里做一下简单判断,输入整数才可以*/

if (!sc.hasNextInt()) {

System.out.println("输入有误,【重新】输入");

sc.next();

continue;

}

int delid = sc.nextInt();

phoneBook.delContPerson(delid);

break;

}break;

case 6:

System.out.println("退出成功");

break prof;

}

}

}

}

}

运行截图:

if(contactPersons[i].getName().equals(name)){

newContPersons[length++] =contactPersons[i];

}

i++;

}

newContPersons = Arrays.copyOf(newContPersons,length);

return newContPersons;

}

//3.查找所有的联系人

public void findAll(){

for(int i=0; i

contactPersons[i].show();

}

}

//4. 修改联系人信息

public void modfyMesById(int id,String phoneNo){

int i;

for(i=0; i

if(contactPersons[i].getId()==id){

contactPersons[i].setPhoneNo(phoneNo);

System.out.println("修改成功");

break;

}

}

if(i>=size){

System.out.println("修改有误");

}

}

//5.删除联系人信息

public void delContPerson(int id) {

int i;

for(i=0; i

if (contactPersons[i].getId() == id) {

break;

}

}

if(i>=size){

System.out.println("删除有误");

}else{

for(int j=size-2; j>=i; j++){

contactPersons[j]=contactPersons[j+1];

}

size--;

System.out.println("删除成功");

}

}

}

test.java

package com.demo4;

import java.util.Scanner;

public class test {

public static void main(String[] args) {

/* 1. 新增一个联系人

2.查找指定的联系人

3.查找所有的联系人

4. 修改联系人信息

5.删除联系人信息

6.退出系统*/

PhoneBook phoneBook = new PhoneBook();

System.out.println("==================电话本系统===================");

Scanner sc =new Scanner(System.in);

prof: while(true) {

while (true) {

System.out.println("---------------------------------------------------------");

System.out.println("1,【添加联系人】 2,【查找联系人】 3,【浏览所有】");

System.out.println("4,【修改联系人】 5,【删除联系人】 6,【退出系统】");

System.out.println("----------------------------------------------------------");

System.out.print("选择操作【标号】:");

if(!sc.hasNextInt()){

sc.next();

System.out.println("输入有序,【重新】输入");

continue ;

}

int num = sc.nextInt();

switch (num) {

case 1:

System.out.println("进入【添加】操作:");

System.out.println("添加操作");

System.out.print("输入姓名:");String name =sc.next();

/*这里对性别做了简单限制,男或者女,其他输入暂且不做判断,可以自行优化*/

while(true) {

System.out.print("输入性别:");

String sex = sc.next();

if (!("男".equals(sex) || "女".equals(sex))) {

System.out.println("输入有误,【重新】输入");

continue;

}

System.out.print("输入年龄: ");Integer age = sc.nextInt();

System.out.print("输入电话号码:");String phoneNo = sc.next();

System.out.print("输入证件号:");String idCard = sc.next();

phoneBook.addContPerson(name,sex,age,phoneNo,idCard);

break;

}

case 2:

System.out.println("进入【查询】操作:");

System.out.print("输入联系人【姓名】");String fname = sc.next();

ContactPerson[] contactPeoples=phoneBook.findByName(fname);

if(contactPeoples!=null){

for(ContactPerson contactPeople : contactPeoples){

contactPeople.show();

}

System.out.println("查询成功");

}else{

System.out.println("暂无信息");

}

break;

case 3:

System.out.println("进入【浏览】操作:");

phoneBook.findAll();

break;

case 4:

System.out.println("进入【修改】操作:");

System.out.print("输入修改的【标号】: ");

int id =sc.nextInt();

System.out.print("将【手机号】修改成: ");

String newphoneNo = sc.next();

phoneBook.modfyMesById(id,newphoneNo);

break;

case 5:

System.out.println("进入【删除】操作:");

while(true) {

System.out.println("输入要删除标【标号】:");

/*这里做一下简单判断,输入整数才可以*/

if (!sc.hasNextInt()) {

System.out.println("输入有误,【重新】输入");

sc.next();

continue;

}

int delid = sc.nextInt();

phoneBook.delContPerson(delid);

break;

}break;

case 6:

System.out.println("退出成功");

break prof;

}

}

}

}

}

运行截图:

contactPersons[i].show();

}

}

//4. 修改联系人信息

public void modfyMesById(int id,String phoneNo){

int i;

for(i=0; i

if(contactPersons[i].getId()==id){

contactPersons[i].setPhoneNo(phoneNo);

System.out.println("修改成功");

break;

}

}

if(i>=size){

System.out.println("修改有误");

}

}

//5.删除联系人信息

public void delContPerson(int id) {

int i;

for(i=0; i

if (contactPersons[i].getId() == id) {

break;

}

}

if(i>=size){

System.out.println("删除有误");

}else{

for(int j=size-2; j>=i; j++){

contactPersons[j]=contactPersons[j+1];

}

size--;

System.out.println("删除成功");

}

}

}

test.java

package com.demo4;

import java.util.Scanner;

public class test {

public static void main(String[] args) {

/* 1. 新增一个联系人

2.查找指定的联系人

3.查找所有的联系人

4. 修改联系人信息

5.删除联系人信息

6.退出系统*/

PhoneBook phoneBook = new PhoneBook();

System.out.println("==================电话本系统===================");

Scanner sc =new Scanner(System.in);

prof: while(true) {

while (true) {

System.out.println("---------------------------------------------------------");

System.out.println("1,【添加联系人】 2,【查找联系人】 3,【浏览所有】");

System.out.println("4,【修改联系人】 5,【删除联系人】 6,【退出系统】");

System.out.println("----------------------------------------------------------");

System.out.print("选择操作【标号】:");

if(!sc.hasNextInt()){

sc.next();

System.out.println("输入有序,【重新】输入");

continue ;

}

int num = sc.nextInt();

switch (num) {

case 1:

System.out.println("进入【添加】操作:");

System.out.println("添加操作");

System.out.print("输入姓名:");String name =sc.next();

/*这里对性别做了简单限制,男或者女,其他输入暂且不做判断,可以自行优化*/

while(true) {

System.out.print("输入性别:");

String sex = sc.next();

if (!("男".equals(sex) || "女".equals(sex))) {

System.out.println("输入有误,【重新】输入");

continue;

}

System.out.print("输入年龄: ");Integer age = sc.nextInt();

System.out.print("输入电话号码:");String phoneNo = sc.next();

System.out.print("输入证件号:");String idCard = sc.next();

phoneBook.addContPerson(name,sex,age,phoneNo,idCard);

break;

}

case 2:

System.out.println("进入【查询】操作:");

System.out.print("输入联系人【姓名】");String fname = sc.next();

ContactPerson[] contactPeoples=phoneBook.findByName(fname);

if(contactPeoples!=null){

for(ContactPerson contactPeople : contactPeoples){

contactPeople.show();

}

System.out.println("查询成功");

}else{

System.out.println("暂无信息");

}

break;

case 3:

System.out.println("进入【浏览】操作:");

phoneBook.findAll();

break;

case 4:

System.out.println("进入【修改】操作:");

System.out.print("输入修改的【标号】: ");

int id =sc.nextInt();

System.out.print("将【手机号】修改成: ");

String newphoneNo = sc.next();

phoneBook.modfyMesById(id,newphoneNo);

break;

case 5:

System.out.println("进入【删除】操作:");

while(true) {

System.out.println("输入要删除标【标号】:");

/*这里做一下简单判断,输入整数才可以*/

if (!sc.hasNextInt()) {

System.out.println("输入有误,【重新】输入");

sc.next();

continue;

}

int delid = sc.nextInt();

phoneBook.delContPerson(delid);

break;

}break;

case 6:

System.out.println("退出成功");

break prof;

}

}

}

}

}

运行截图:

if(contactPersons[i].getId()==id){

contactPersons[i].setPhoneNo(phoneNo);

System.out.println("修改成功");

break;

}

}

if(i>=size){

System.out.println("修改有误");

}

}

//5.删除联系人信息

public void delContPerson(int id) {

int i;

for(i=0; i

if (contactPersons[i].getId() == id) {

break;

}

}

if(i>=size){

System.out.println("删除有误");

}else{

for(int j=size-2; j>=i; j++){

contactPersons[j]=contactPersons[j+1];

}

size--;

System.out.println("删除成功");

}

}

}

test.java

package com.demo4;

import java.util.Scanner;

public class test {

public static void main(String[] args) {

/* 1. 新增一个联系人

2.查找指定的联系人

3.查找所有的联系人

4. 修改联系人信息

5.删除联系人信息

6.退出系统*/

PhoneBook phoneBook = new PhoneBook();

System.out.println("==================电话本系统===================");

Scanner sc =new Scanner(System.in);

prof: while(true) {

while (true) {

System.out.println("---------------------------------------------------------");

System.out.println("1,【添加联系人】 2,【查找联系人】 3,【浏览所有】");

System.out.println("4,【修改联系人】 5,【删除联系人】 6,【退出系统】");

System.out.println("----------------------------------------------------------");

System.out.print("选择操作【标号】:");

if(!sc.hasNextInt()){

sc.next();

System.out.println("输入有序,【重新】输入");

continue ;

}

int num = sc.nextInt();

switch (num) {

case 1:

System.out.println("进入【添加】操作:");

System.out.println("添加操作");

System.out.print("输入姓名:");String name =sc.next();

/*这里对性别做了简单限制,男或者女,其他输入暂且不做判断,可以自行优化*/

while(true) {

System.out.print("输入性别:");

String sex = sc.next();

if (!("男".equals(sex) || "女".equals(sex))) {

System.out.println("输入有误,【重新】输入");

continue;

}

System.out.print("输入年龄: ");Integer age = sc.nextInt();

System.out.print("输入电话号码:");String phoneNo = sc.next();

System.out.print("输入证件号:");String idCard = sc.next();

phoneBook.addContPerson(name,sex,age,phoneNo,idCard);

break;

}

case 2:

System.out.println("进入【查询】操作:");

System.out.print("输入联系人【姓名】");String fname = sc.next();

ContactPerson[] contactPeoples=phoneBook.findByName(fname);

if(contactPeoples!=null){

for(ContactPerson contactPeople : contactPeoples){

contactPeople.show();

}

System.out.println("查询成功");

}else{

System.out.println("暂无信息");

}

break;

case 3:

System.out.println("进入【浏览】操作:");

phoneBook.findAll();

break;

case 4:

System.out.println("进入【修改】操作:");

System.out.print("输入修改的【标号】: ");

int id =sc.nextInt();

System.out.print("将【手机号】修改成: ");

String newphoneNo = sc.next();

phoneBook.modfyMesById(id,newphoneNo);

break;

case 5:

System.out.println("进入【删除】操作:");

while(true) {

System.out.println("输入要删除标【标号】:");

/*这里做一下简单判断,输入整数才可以*/

if (!sc.hasNextInt()) {

System.out.println("输入有误,【重新】输入");

sc.next();

continue;

}

int delid = sc.nextInt();

phoneBook.delContPerson(delid);

break;

}break;

case 6:

System.out.println("退出成功");

break prof;

}

}

}

}

}

运行截图:

if (contactPersons[i].getId() == id) {

break;

}

}

if(i>=size){

System.out.println("删除有误");

}else{

for(int j=size-2; j>=i; j++){

contactPersons[j]=contactPersons[j+1];

}

size--;

System.out.println("删除成功");

}

}

}

test.java

package com.demo4;

import java.util.Scanner;

public class test {

public static void main(String[] args) {

/* 1. 新增一个联系人

2.查找指定的联系人

3.查找所有的联系人

4. 修改联系人信息

5.删除联系人信息

6.退出系统*/

PhoneBook phoneBook = new PhoneBook();

System.out.println("==================电话本系统===================");

Scanner sc =new Scanner(System.in);

prof: while(true) {

while (true) {

System.out.println("---------------------------------------------------------");

System.out.println("1,【添加联系人】 2,【查找联系人】 3,【浏览所有】");

System.out.println("4,【修改联系人】 5,【删除联系人】 6,【退出系统】");

System.out.println("----------------------------------------------------------");

System.out.print("选择操作【标号】:");

if(!sc.hasNextInt()){

sc.next();

System.out.println("输入有序,【重新】输入");

continue ;

}

int num = sc.nextInt();

switch (num) {

case 1:

System.out.println("进入【添加】操作:");

System.out.println("添加操作");

System.out.print("输入姓名:");String name =sc.next();

/*这里对性别做了简单限制,男或者女,其他输入暂且不做判断,可以自行优化*/

while(true) {

System.out.print("输入性别:");

String sex = sc.next();

if (!("男".equals(sex) || "女".equals(sex))) {

System.out.println("输入有误,【重新】输入");

continue;

}

System.out.print("输入年龄: ");Integer age = sc.nextInt();

System.out.print("输入电话号码:");String phoneNo = sc.next();

System.out.print("输入证件号:");String idCard = sc.next();

phoneBook.addContPerson(name,sex,age,phoneNo,idCard);

break;

}

case 2:

System.out.println("进入【查询】操作:");

System.out.print("输入联系人【姓名】");String fname = sc.next();

ContactPerson[] contactPeoples=phoneBook.findByName(fname);

if(contactPeoples!=null){

for(ContactPerson contactPeople : contactPeoples){

contactPeople.show();

}

System.out.println("查询成功");

}else{

System.out.println("暂无信息");

}

break;

case 3:

System.out.println("进入【浏览】操作:");

phoneBook.findAll();

break;

case 4:

System.out.println("进入【修改】操作:");

System.out.print("输入修改的【标号】: ");

int id =sc.nextInt();

System.out.print("将【手机号】修改成: ");

String newphoneNo = sc.next();

phoneBook.modfyMesById(id,newphoneNo);

break;

case 5:

System.out.println("进入【删除】操作:");

while(true) {

System.out.println("输入要删除标【标号】:");

/*这里做一下简单判断,输入整数才可以*/

if (!sc.hasNextInt()) {

System.out.println("输入有误,【重新】输入");

sc.next();

continue;

}

int delid = sc.nextInt();

phoneBook.delContPerson(delid);

break;

}break;

case 6:

System.out.println("退出成功");

break prof;

}

}

}

}

}

运行截图:


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:Java单例模式的几种常见写法(写出一个单例模式的类)
下一篇:MQ的消息模型及在工作上应用场景(mqtt模型)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~