import java.util.Scanner;public class MyTel {public static Scanner sc = new Scanner(System.in);//电话本存储结构public static String[][] myTels = new String[500][6];public static int count = 0; //记录当前电话本中的联系人个数//显示主界面public static void showMain(){ System.out.println("—————–电话本管理系统—————-"); System.out.println(“1.添加 2.删除 3.修改 4.查询所有 5.根据姓名查询 0.退出”); System.out.println("—————–电话本管理系统—————-"); System.out.println(“请选择业务:”);}//根据索引值修改内容public static void updateByIndex(int index){ System.out.println(“姓名:”); myTels[index][0] = sc.next(); System.out.println(“性别:”); myTels[index][1] = sc.next(); System.out.println(“年龄:”); myTels[index][2] = sc.next(); System.out.println(“电话:”); myTels[index][3] = sc.next(); System.out.println(“QQ:”); myTels[index][4] = sc.next(); System.out.println(“地址:”); myTels[index][5] = sc.next(); System.out.println(“姓名:"+myTels[count][0]+",性别:"+myTels[index][1]+",年龄:"+myTels[index][2]+",电话:"+myTels[index][3]+",QQ:"+myTels[index][4]+",地址:"+myTels[index][5]);}//添加电话本public static void myAdd(){ System.out.println(”——————添加电话本—————–"); updateByIndex(count); count++; System.out.println(“添加成功!”);}//根据姓名查找联系人,返回查找到的索引public static int findByName(String name){ int index = -1; //循环遍历电话本 for(int i=0;i<count;i++){ if(myTels[i][0].equals(name)){ index = i; } } return index;}//删除电话本public static void myDelete(){ System.out.println("—————–删除电话本—————-"); System.out.println(“请输入要删除的联系人姓名:”); String name = sc.next(); //首先找到该联系人 int tempIndex = findByName(name); for(int i=0;i<myTels.length;i++){ if(myTels[i][0].equals(name)){ tempIndex = i; } } //如果不存在该联系人则直接返回 if(tempIndex == -1){ System.out.println(“该联系人不存在!”); return; } //确认是否删除 System.out.println(“确认要删除吗?1(是)0(否)”); int input = sc.nextInt(); if(input == 1){ //如果存在则直接删除(将后面的联系人替换前面的联系人) for(int i=tempIndex+1;i<count;i++){ //前移 myTels[i-1] = myTels[i]; } //联系人个数减1 count–; System.out.println(“删除成功!”); }}//修改public static void myUpdate(){ System.out.println("—————–修改电话本—————-"); System.out.println(“请输入要修改的联系人姓名:”); String tempname = sc.next(); //根据姓名查找联系人 int index = findByName(tempname); if(index == -1){ System.out.println(“无信息!”); return; } //正常的修改逻辑 System.out.println(“姓名:"+myTels[index][0]+",性别:"+myTels[index][1]+",年龄:"+myTels[index][2]+",电话:"+myTels[index][3]+",QQ:"+myTels[index][4]+",地址:"+myTels[index][5]); System.out.println(“求重新输入信息:”); updateByIndex(index); System.out.println(“修改成功!”);}//打印所有电话本public static void myshowAll(){ for(String[] infos:myTels){ for(String info:infos){ System.out.println(info+”,"); } System.out.println(); }}//根据姓名查询public static void myFinfByName(){ System.out.println("——————根据姓名查询—————–"); System.out.println(“请输入联系人姓名:”); String name = sc.next(); int index = findByName(name); // TODO 20190112添加“联系人是否存在” for(String info:myTels[index]){ System.out.println(info+","); }}public static void main(String[] args) { while(true){ //显示主界面 showMain(); //获取控制台输入 int input = sc.nextInt(); //根据输入进行相关业务处理 switch(input){ case 1: //添加 myAdd(); break; case 2: //删除 myDelete(); break; case 3: //修改 myUpdate(); break; case 4: //查询所有 myshowAll(); break; case 5: //根据姓名查询 myFinfByName(); break; case 0: //退出系统 sc.close(); System.exit(1); break; default: System.out.println(“输入有误!”); showMain(); break; } }}}
电话本管理系统
January 10, 2019 · 2 min · jiezi