package
com.zhp.java;
public
class
Person {
private
String
name
;
private
String
sex
;
private
int
age
;
private
long
tel
;
private
long
qq
;
private
String
ads
;
public
Person() {
}
public
Person(String
name
, String
sex
,
int
age
,
long
tel
,
long
qq
, String
ads
) {
this
.
name
=
name
;
this
.
sex
=
sex
;
this
.
age
=
age
;
this
.
tel
=
tel
;
this
.
qq
=
qq
;
this
.
ads
=
ads
;
}
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
long
getTel() {
return
tel
;
}
public
void
setTel(
long
tel
) {
this
.
tel
=
tel
;
}
public
long
getQq() {
return
qq
;
}
public
void
setQq(
long
qq
) {
this
.
qq
=
qq
;
}
public
String getAds() {
return
ads
;
}
public
void
setAds(String
ads
) {
this
.
ads
=
ads
;
}
@Override
public
String toString() {
return
"姓名:"
+
name
+
", 性别:"
+
sex
+
", 年龄:"
+
age
+
", 电话:"
+
tel
+
", QQ:"
+
qq
+
", 地址:"
+
ads
;
}
}
package
com.zhp.java;
import
java.util.Scanner;
public
class
GuanLi {
Scanner
sc
=
new
Scanner(System.
in
);
Person[]
arr
=
new
Person[100];
int
current
= -1;
// 用于保存当前数组中的有电话本对象的下标
public
void
yeWu() {
int
x
= 0;
while
(
true
) {
System.
out
.println(
"请选择业务"
);
System.
out
.println(
"--------------------电话本管理系统--------------------"
);
System.
out
.println(
"1.添加 2.删除 3.修改 4.查询所有 5.根据姓名查询 0.退出"
);
System.
out
.println(
"--------------------电话本管理系统--------------------"
);
x
=
sc
.nextInt();
if
(
x
== 1) {
add();
}
else
if
(
x
== 2) {
del();
}
else
if
(
x
== 3) {
update();
}
else
if
(
x
== 4) {
selectAll();
}
else
if
(
x
== 5) {
selectName();
}
else
if
(
x
== 0) {
exit();
break
;
}
else
{
System.
out
.println(
"请选择正确的功能"
);
}
}
}
// 添加
public
void
add() {
System.
out
.println(
"--------------------添加联系人--------------------"
);
current
++;
System.
out
.print(
"请输入姓名"
);
String
q
=
sc
.nextLine();
String
name
=
sc
.nextLine();
System.
out
.print(
"请输入性别"
);
String
sex
=
sc
.nextLine();
System.
out
.print(
"请输入年龄"
);
int
age
=
sc
.nextInt();
System.
out
.print(
"请输入电话"
);
long
tel
=
sc
.nextLong();
System.
out
.print(
"请输入QQ"
);
long
qq
=
sc
.nextLong();
System.
out
.print(
"请输入地址"
);
String
w
=
sc
.nextLine();
String
ads
=
sc
.nextLine();
Person
person
=
new
Person(
name
,
sex
,
age
,
tel
,
qq
,
ads
);
arr
[
current
] =
person
;
}
// 删除
public
void
del() {
System.
out
.println(
"--------------------删除联系人--------------------"
);
System.
out
.println(
"请输入删除联系人姓名:"
);
String
q
=
sc
.nextLine();
String
name1
=
sc
.nextLine();
boolean
flag
=
false
;
for
(
int
i
= 0;
i
<=
current
;
i
++) {
if
(
name1
.equals(
arr
[
i
].getName())) {
System.
out
.println(
arr
[
i
].toString());
System.
out
.println(
"确定么?1(是)0(否)"
);
int
a
=
sc
.nextInt();
if
(
a
== 1) {
System.
out
.println(
"删除成功"
);
flag
=
true
;
}
//此处if放在判断名字的if内,名字不相等是不进入此处if
if
(
flag
) {
//此处for循环j<=current也可以,因为最后current--掉了
for
(
int
j
=
i
;
j
<=
current
-1;
j
++) {
arr
[
j
] =
arr
[
j
+ 1];
}
current
--;
}
}
}
if
(
flag
==
false
) {
System.
out
.println(
"此人不存在"
);
}
}
// 修改
public
void
update() {
System.
out
.println(
"--------------------修改联系人--------------------"
);
System.
out
.println(
"请输入联系人姓名:"
);
String
q
=
sc
.nextLine();
String
name1
=
sc
.nextLine();
boolean
flag
=
false
;
for
(
int
i
= 0;
i
<=
current
;
i
++) {
if
(
name1
.equals(
arr
[
i
].getName())) {
flag
=
true
;
}
if
(
flag
) {
System.
out
.print(
"请输入姓名"
);
String
name
=
sc
.nextLine();
System.
out
.print(
"请输入性别"
);
String
sex
=
sc
.nextLine();
System.
out
.print(
"请输入年龄"
);
int
age
=
sc
.nextInt();
System.
out
.print(
"请输入电话"
);
long
tel
=
sc
.nextLong();
System.
out
.print(
"请输入QQ"
);
long
qq
=
sc
.nextLong();
System.
out
.print(
"请输入地址"
);
String
e
=
sc
.nextLine();
String
ads
=
sc
.nextLine();
arr
[
i
] =
new
Person(
name
,
sex
,
age
,
tel
,
qq
,
ads
);
}
}
if
(
flag
==
false
) {
System.
out
.println(
"此人不存在"
);
}
}
// 查看所有的
public
void
selectAll() {
System.
out
.println(
"--------------------查看所有联系人--------------------"
);
for
(
int
i
= 0;
i
<=
current
;
i
++) {
System.
out
.println(
arr
[
i
].toString());
}
}
// 根据姓名查看
public
void
selectName() {
System.
out
.println(
"--------------------查找联系人--------------------"
);
System.
out
.println(
"请输入联系人姓名:"
);
String
q
=
sc
.nextLine();
String
name1
=
sc
.nextLine();
boolean
flag
=
false
;
for
(
int
i
= 0;
i
<=
current
;
i
++) {
if
(
name1
.equals(
arr
[
i
].getName())) {
flag
=
true
;
}
if
(
flag
) {
System.
out
.println(
arr
[
i
].toString());
break
;
}
}
if
(
flag
==
false
) {
System.
out
.println(
"不存在此人"
);
}
}
// 退出
public
void
exit() {
System.
out
.println(
"系统退出"
);
}
}
package
com.zhp.java;
public
class
Test {
public
static
void
main(String[]
args
) {
GuanLi
gl
=
new
GuanLi();
gl
.yeWu();
}
}