电话本的java程序代码 电话本的java程序代码怎么写( 五 )


public void setName(String name);
public String getPhone();
public void setPhone(String phone);
public String toString();
}
interface PhoneBook {
public ArrayListContact getPhoneBook();
public boolean add(String name);
public boolean add(String name, String phone);
public Contact getByName(String name);
public Contact getByPhone(String phone);
public void update();
public boolean remove(String name);
boolean isExist(String name);
}
class ContactImpl implements Contact {
static final String EMPTY_PHONE = "Empty";
private String name;
private String phone;
public ContactImpl (String name) {
this.name = name;
this.phone = null;
}
public ContactImpl (String name, String phone) {
this.name = name;
this.phone = phone;
}
@Override
public String getName() {
return name;
}
@Override
public void setName(String name) {
this.name = name;
}
@Override
public String getPhone() {
return (phone == null ? EMPTY_PHONE : phone);
}
@Override
public void setPhone(String phone) {
this.phone = phone;
}
@Override
public String toString() {
return getName() + "\t\t: " + getPhone();
}
}
class PhoneBookImpl implements PhoneBook {
ArrayListContact phoneBook;
public PhoneBookImpl () {
phoneBook = new ArrayListContact();
}
@Override
public ArrayListContact getPhoneBook() {
return phoneBook;
}
@Override
public boolean add(String name) {
if (isExist(name)) {
return false;
}
else {
phoneBook.add(new ContactImpl(name));
return true;
}
}
@Override
public boolean add(String name, String phone) {
if (isExist(name)) {
return false;
}
else {
if (phone == null || phone.equals("") || phone.trim().equals("")) {
add(name);
}
else {
phoneBook.add(new ContactImpl(name, phone));
}
return true;
}
}
@Override
public Contact getByName(String name) {
for (Contact c : phoneBook) {
if (c.getName().equals(name)) {
return c;
}
}
return null;
}
@Override
public Contact getByPhone(String phone) {
for (Contact c : phoneBook) {
if (c.getPhone().equals(phone)) {
return c;
}
}
return null;
}
@Override
public boolean remove(String name) {
for (Contact c : phoneBook) {
if (c.getName().equals(name)) {
phoneBook.remove(c);
return true;
}
}
return false;
}
@Override
public void update() {
for (int i = 0; iphoneBook.size() - 1; i++) {
for (int j = i + 1; jphoneBook.size(); j++) {
if (phoneBook.get(i).getName().toLowerCase().compareTo(
phoneBook.get(j).getName().toLowerCase())0) {
Contact c = phoneBook.get(i);
phoneBook.set(i, phoneBook.get(j));
phoneBook.set(j, c);
}
}
}
}
@Override
public boolean isExist(String name) {
for (Contact c : phoneBook) {
if (c.getName().equals(name)) {
return true;
}
}
return false;
}
}
JAVA通讯录 求一个JAVA编写的通讯录 , 基本的就可以 。具体方法如下:
1、定义封装一条记录的实体类
2、根据实际系统容量,定义一个数组
3、完成系统中显示全部记录的逻辑
4、完成系统中添加一条记录的逻辑
5、完成系统中删除一条记录的逻辑
6、完成系统中修改一条记录的逻辑
7、全部代码:
import java.util.Scanner;
class Contact {