请编写一个简单的Java程序以实现简单的通讯录功能
时间: 2023-03-07 16:20:22 浏览: 131
答:以下是一个简单的Java程序用于实现简单的通讯录功能:import java.util.HashMap;public class AddressBook {
private HashMap<String, String> contacts;
public AddressBook() {
this.contacts = new HashMap<String, String>();
}
public void addContact(String name, String number) {
this.contacts.put(name, number);
}
public String getNumber(String name) {
return this.contacts.get(name);
}
}
相关问题
Java数据结构——用顺序表编写一个简易通讯录
好的,下面是用Java顺序表实现简易通讯录的代码:
首先,在Java中需要定义一个类来表示通讯录中的每一个联系人,这个类包含联系人的姓名和电话号码两个属性:
```java
public class Contact {
private String name;
private String phoneNumber;
public Contact(String name, String phoneNumber) {
this.name = name;
this.phoneNumber = phoneNumber;
}
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;
}
}
```
接下来,我们用一个顺序表来存储所有的联系人信息:
```java
public class ContactList {
private Contact[] contacts;
private int size;
public ContactList(int capacity) {
contacts = new Contact[capacity];
size = 0;
}
public boolean add(Contact contact) {
if (size >= contacts.length) {
return false;
}
contacts[size++] = contact;
return true;
}
public boolean remove(int index) {
if (index < 0 || index >= size) {
return false;
}
for (int i = index; i < size - 1; i++) {
contacts[i] = contacts[i + 1];
}
contacts[--size] = null;
return true;
}
public Contact get(int index) {
if (index < 0 || index >= size) {
return null;
}
return contacts[index];
}
public int size() {
return size;
}
}
```
在这个类中,我们定义了一个Contact类型的数组来存储所有的联系人信息,同时还有一个size变量来记录当前已经存储的联系人数目。在这个类中,我们提供了以下几个方法:
- add(Contact contact):向通讯录中添加一个联系人,如果当前已经存储的联系人数目已经达到了数组的容量,则添加失败。
- remove(int index):根据给定的下标从通讯录中删除一个联系人,如果给定的下标越界,则删除失败。
- get(int index):根据给定的下标获取通讯录中指定位置的联系人,如果给定的下标越界,则返回null。
- size():获取当前通讯录中已经存储的联系人数目。
我们可以使用这个类来实现一个简单的通讯录应用程序,这个程序可以让用户输入联系人的姓名和电话号码,然后将其添加到通讯录中,也可以让用户删除指定位置的联系人,还可以列出所有已经存储的联系人信息。下面是这个应用程序的代码:
```java
import java.util.Scanner;
public class ContactApp {
public static void main(String[] args) {
ContactList contactList = new ContactList(10);
Scanner scanner = new Scanner(System.in);
while (true) {
System.out.println("请选择操作:");
System.out.println("1. 添加联系人");
System.out.println("2. 删除联系人");
System.out.println("3. 列出所有联系人");
System.out.println("4. 退出");
int choice = scanner.nextInt();
scanner.nextLine();
switch (choice) {
case 1:
System.out.println("请输入联系人姓名:");
String name = scanner.nextLine();
System.out.println("请输入联系人电话号码:");
String phoneNumber = scanner.nextLine();
Contact contact = new Contact(name, phoneNumber);
if (contactList.add(contact)) {
System.out.println("添加成功!");
} else {
System.out.println("添加失败,通讯录已满!");
}
break;
case 2:
System.out.println("请输入要删除联系人的下标:");
int index = scanner.nextInt();
if (contactList.remove(index)) {
System.out.println("删除成功!");
} else {
System.out.println("删除失败,下标越界!");
}
break;
case 3:
System.out.println("所有联系人信息:");
for (int i = 0; i < contactList.size(); i++) {
Contact c = contactList.get(i);
System.out.println((i + 1) + ". " + c.getName() + " " + c.getPhoneNumber());
}
break;
case 4:
System.out.println("谢谢使用!");
return;
default:
System.out.println("输入错误,请重新输入!");
break;
}
}
}
}
```
这个应用程序首先创建了一个ContactList对象来存储所有的联系人信息。然后,它通过一个无限循环来等待用户输入选择,并根据用户的选择执行相应的操作。当用户选择退出程序时,程序会结束。
java图形界面通讯录_Java架构-Java实现简易的界面通讯录
好的,我明白了。针对您的问题,我可以给您提供以下思路:
1. 设计通讯录界面:可以使用Java Swing或JavaFX等GUI框架来设计通讯录界面,包括添加联系人、查看联系人、删除联系人等功能。
2. 设计通讯录数据结构:可以使用数组、链表等数据结构来存储联系人信息,例如姓名、电话、地址等。
3. 实现通讯录功能:根据通讯录界面设计和数据结构,实现添加联系人、查看联系人、删除联系人等功能。
4. 实现数据持久化:可以使用文件存储、数据库等方式来实现通讯录数据的持久化,确保数据不会因为程序关闭而丢失。
5. 进行测试和调试:编写测试用例,进行测试和调试,确保程序能够正常运行。
以上是一个简单的思路,您可以根据实际需求进行修改和完善。