通讯录管理系统
简介
通讯录是一种记录联系人信息的工具,用于存储和管理与个人、组织或机构相关的联系信息。通讯录管理系统是一个用于创建、编辑、查和删除联系人信息的软件应用程序。本文将介绍一个使用Java编写的通讯录管理系统的设计源代码。
功能需求
通讯录管理系统需要具备以下功能: 1. 添加联系人:用户可以输入联系人的姓名、电话号码、地址等信息,并将其添加到通讯录中。 2. 编辑联系人:用户可以选择要编辑的联系人,并可以修改其姓名、电话号码、地址等信息。 3. 查联系人:用户可以输入关键字进行搜索,系统将根据关键字在通讯录中查匹配的联系人并显示出来。 4. 删除联系人:用户可以选择要删除的联系人,并将其从通讯录中删除。 5. 显示所有联系人:系统可以列出所有已存储在通讯录中的联系人信息。
设计思路
数据结构
为了实现上述功能,我们需要设计合适的数据结构来存储联系人信息。在这里,我们可以使用一个类来表示每个联系人,其中包含姓名、电话号码和地址等属性。然后,我们可以使用一个集合(如ArrayList)来存储所有的联系人对象。
用户界面
为了方便用户操作,我们可以使用命令行界面(CLI)来实现通讯录管理系统。用户可以通过输入不同的命令来执行相应的操作,如添加联系人、编辑联系人、查联系人等。
功能实现
1.添加联系人:用户输入联系人的姓名、电话号码和地址,系统创建一个联系人对象,并将其添加到集合中。
2.编辑联系人:用户选择要编辑的联系人,并输入要修改的信息,系统更新该联系人对象的属性。
3.查联系人:用户输入关键字,系统遍历所有联系人对象并检查是否包含该关键字,将匹配的结果显示出来。
4.删除联系人:用户选择要删除的联系人,系统从集合中移除该对象。
5.显示所有联系人:系统遍历集合中的所有联系人对象,并将其属性逐个显示出来。
代码实现
import java.util.ArrayList;
import java.util.Scanner;
class Contact {
private String name;
private String phoneNumber;
private String email;
public Contact(String name, String phoneNumber, String email) {
this.name = name;
this.phoneNumber = phoneNumber;
this.email = email;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPhoneNumber() {
return phoneNumber;
}
public void setPhoneNumber(String phoneNumber) {
this.phoneNumber = phoneNumber;
}
public String getEmail() {
return email;
}
public void setEmail(String email) {
this.email = email;
}
}
public class AddressBook {
private ArrayList<Contact> contacts;
public AddressBook() {
contacts = new ArrayList<>();
}
public void addContact(Contact contact) {
contacts.add(contact);
System.out.println("Contact added successfully!");
}
public void editContact(int index, Contact contact) {
if (index >= 0 && index < contacts.size()) {
contacts.set(index, contact);
System.out.println("Contact edited successfully!");
} else {
System.out.println("Invalid index!");
}
}
public void searchContacts(String keyword) {
boolean found = false;
for (Contact contact : contacts) {
if (contact.getName().contains(keyword) || contact.getPhoneNumber().contains(keyword)
|| contact.getEmail().contains(keyword)) {
System.out.printlnphp订单管理系统源码(contact.getName() + " | " + contact.getPhoneNumber() + " | " + contact.getEmail());
found = true;
}
}
if (!found) {
System.out.println("No matching contacts found.");
}
}
public void deleteContact(int index) {
if (index >= 0 && index < contacts.size()) {
contacts.remove(index);
System.out.println("Contact deleted successfully!");
} else {
System.out.println("Invalid index!");
}
}
public void displayAllContacts() {
for (Contact contact : contacts) {
System.out.println(contact.getName() + " | " + contact.getPhoneNumber() + " | " + contact.getEmail());
}
}
public static void main(String[] args) {
AddressBook addressBook = new AddressBook();
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("\nAddress Book Management System");
System.out.println("1. Add Contact");
System.out.println("2. Edit Contact");
System.out.println("3. Search Contacts");
System.out.println("4. Delete Contact");
System.out.println("5. Display All Contacts");
System.out.println("6. Exit");
System.out.print("\nEnter your choice: ");
int choice = scanner.nextInt();
switch (choice) {
case 1:
scanner.nextLine(); // Consume newline character
System.out.print("Enter name: ");
String name = scanner.nextLine();
System.out.print("Enter phone number: ");
String phoneNumber = scanner.nextLine();
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论