//本人以前学的是php,基本上是写一个类,解决问题, 写的仓促, 不足之处请指出.
package test1;
import java.util.*;
public class tel {
String name;
String age;
String sex;
String addr;
int dindex ;
//定义一个二维数组,用来储存用户
String[][] ytel =new String[55][4];
int len =0 ;
String[] y = {"姓名","年龄","性别","地址"};
Scanner sc = new Scanner(System.in);
public void choise(){
System.out.println(" =========== 电话本管理系统 ==========\n"
+ "1:添加 2:删除 3:修改 4:查询出所有 5:根据姓名查询 0:退出 \n"
+ " =========== 电话本管理系统 ==========\n"+ "请选择业务");
byte one = sc.nextByte();
switch (one) {
case 0: //退出
this.quit();
break;
case 1 : //添加
System.out.println("======添加电话本=======");
System.out.println(this.Add(name, age, sex, addr));
break;
case 2: //删除
System.out.print("请输入要删除的用户");
String dname = sc.next();
System.out.println(this.find(dname));
if(this.find(dname).equals("无此用户")){
break;
}
System.out.println("你确定要删除吗?1(是), 0(否)");
byte flag = sc.nextByte();
this.del(dindex);
break;
case 3: //更新
System.out.println("请输入更新的用户");
String n = sc.next();
System.out.println(this.find(n));
if(this.find(n).equals("无此用户")){
break;
}
this.upd();
break;
case 4: //查所有
System.out.println(this.selall());
break;
case 5: //查一个
System.out.println("====== 查询用户 ======\n 请输入要查询的姓名");
String fname = sc.next();
System.out.println(this.find(fname));
default:
break;
}
}
public String upd(){
String uall = "";
for(int w=0;w<4;w++){
System.out.println(this.y[w]);
String upd = sc.next();
this.ytel[this.dindex][w]=y[w]+":"+upd;
uall+=y[w]+" :"+upd;
}
return uall+"\n修改成功";
}
public String find(String findname){
String jilu = "";
String flag = "nofind";
if(this.len ==0){
return "请先输入用户";
}
for( int a =0;a<(this.len);a++){
//System.out.print();
if((ytel[a][0]).equals("姓名:"+findname)){
//此处说明查找到了
for(int b=0;b<4;b++){
jilu += this.ytel[a][b];
this.dindex = a;
flag="find";
}
}
}
if(flag.equals("nofind")){
return "无此用户";
}
return jilu;
}
public String del(int id){
for(int w=0;w<4;w++){
this.ytel[id][w]= "";
}
return "删除成功";
}
//退出系统
public void quit(){
return;
}
//添加用户
public String Add(String name,String age,String sex,String addr){
String aall = "";
for(int w=0;w<4;w++){
System.out.print(y[w]+" "); //打印请输入 姓名,年龄,...
String tian = sc.next(); //给用户输入
this.ytel[this.len][w] = y[w] + ":"+ tian; //添加到二位数组中
aall+=y[w]+":"+tian+" \t";
}
(this.len)+=1;
return aall+"\n添加成功" ;
}
public String selall(){
//System.out.println("sssssss");
String all = "";
System.out.println("====== 打印所有的电话本 ======");
for( int a =0;a<this.len;a++){
for(int b=0;b<4;b++){
all+=this.ytel[a][b]+"\n";
}
all+="\n";
}
return all;
}
}
package telclass;
import java.awt.Choice;
public class rtel {
public static void main(String[] args) {
// TODO Auto-generated method stub
tel mytel = new tel();
while(true){
mytel.choise();
}
}
}