java控制臺(tái)怎么實(shí)現(xiàn)通訊錄?
網(wǎng)絡(luò)資訊
2024-08-03 13:58
332
Java控制臺(tái)實(shí)現(xiàn)通訊錄
引言
在Java編程中,控制臺(tái)應(yīng)用程序是一種常見的練習(xí)方式,它可以幫助初學(xué)者快速理解Java的基本語法和面向?qū)ο蟮母拍睢1疚膶⒔榻B如何使用Java控制臺(tái)來實(shí)現(xiàn)一個(gè)簡單的通訊錄程序。
通訊錄功能需求
一個(gè)基本的通訊錄程序應(yīng)該具備以下功能:
- 添加聯(lián)系人
- 刪除聯(lián)系人
- 顯示所有聯(lián)系人
- 搜索聯(lián)系人
- 退出程序
設(shè)計(jì)思路
為了實(shí)現(xiàn)上述功能,我們可以設(shè)計(jì)一個(gè)Contact
類來存儲(chǔ)聯(lián)系人信息,然后使用一個(gè)數(shù)組或列表來管理所有的聯(lián)系人。程序的主邏輯將通過控制臺(tái)輸入來實(shí)現(xiàn)。
實(shí)現(xiàn)步驟
1. 創(chuàng)建Contact類
首先,我們定義一個(gè)Contact
類,用于存儲(chǔ)聯(lián)系人的姓名、電話號(hào)碼和電子郵件。
public 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;
}
// Getter和Setter方法
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;
}
@Override
public String toString() {
return "Name: " + name + ", Phone: " + phoneNumber + ", Email: " + email;
}
}
2. 管理聯(lián)系人
接下來,我們需要一個(gè)類來管理聯(lián)系人列表,提供添加、刪除、顯示和搜索聯(lián)系人的方法。
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class ContactManager {
private List contacts = new ArrayList<>();
public void addContact(Contact contact) {
contacts.add(contact);
}
public void removeContact(String name) {
contacts.removeIf(contact -> contact.getName().equalsIgnoreCase(name));
}
public void displayContacts() {
for (Contact contact : contacts) {
System.out.println(contact);
}
}
public void searchContact(String name) {
for (Contact contact : contacts) {
if (contact.getName().equalsIgnoreCase(name)) {
System.out.println(contact);
return;
}
}
System.out.println("Contact not found.");
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
ContactManager manager = new ContactManager();
boolean running = true;
while (running) {
System.out.println("1. Add Contact");
System.out.println("2. Remove Contact");
System.out.println("3. Display Contacts");
System.out.println("4. Search Contact");
System.out.println("5. Exit");
System.out.print("Enter your choice: ");
int choice = scanner.nextInt();
scanner.nextLine(); // 處理nextInt后的換行符
switch (choice) {
case 1:
System.out.print("Enter name: ");
String name = scanner.nextLine();
System.out.print("Enter phone number: ");
String phoneNumber = scanner.nextLine();
System.out.print("Enter email: ");
String email = scanner.nextLine();
manager.addContact(new Contact(name, phoneNumber, email));
break;
case 2:
System.out.print("Enter name to remove: ");
String removeName = scanner.nextLine();
manager.removeContact(removeName);
break;
case 3:
manager.displayContacts();
break;
case 4:
System.out.print("Enter name to search: ");
String searchName = scanner.nextLine();
manager.searchContact(searchName);
break;
case 5:
running = false;
System.out.println("Exiting program...");
break;
default:
System.out.println("Invalid choice, please try again.");
}
}
scanner.close();
}
}
3. 測試程序
編寫完程序后,應(yīng)該對(duì)其進(jìn)行測試,確保所有功能都能正常工作。
結(jié)語
通過上述步驟,我們實(shí)現(xiàn)了一個(gè)簡單的Java控制臺(tái)通訊錄程序。這個(gè)程序可以作為學(xué)習(xí)Java編程和面向?qū)ο笤O(shè)計(jì)的一個(gè)很好的練習(xí)。隨著技能的提升,可以添加更多功能,如聯(lián)系人分組、持久化存儲(chǔ)等。
注意事項(xiàng)
- 確保輸入數(shù)據(jù)的有效性,避免程序因非法輸入而崩潰。
- 考慮使用異常處理來增強(qiáng)程序的健壯性。
- 隨著聯(lián)系人數(shù)量的增加,考慮使用更高效的數(shù)據(jù)結(jié)構(gòu)來存儲(chǔ)和管理聯(lián)系人。
標(biāo)簽:
- Java
- 控制臺(tái)
- 通訊錄
- Contact類
- 聯(lián)系人管理