错误: 在类 Contact 中找不到 main 方法, 请将 main 方法定义为: public static void main(String[] args) 否则 JavaFX 应用程序类必须扩展javafx.application.Application
时间: 2024-02-09 21:08:20 浏览: 200
这不是一个问题,而是一个错误信息。根据错误信息所述,您需要在 Contact 类中添加一个名为 main 的方法,并将其定义为:
```java
public static void main(String[] args)
```
如果您正在开发一个 JavaFX 应用程序,则还需要将 Contact 类扩展为 javafx.application.Application 类。请注意,这个错误信息可能与您的问题不相关。如果您有任何其他问题,请告诉我。
相关问题
import java.util.ArrayList; import java.util.Scanner; public class ContactManner { public static void main(String[] args) { ArrayList<Contact> array = new ArrayList(); while (true) { Contact s = new Contact(); s.Menu(); Scanner sc1 = new Scanner(System.in); int d = sc1.nextInt(); switch (d) { case 1: { addPeople(array); System.out.println("添加联系人成功"); break; } case 2: { deletePeople(array); break; } case 3: { revisePeople(array); break; } case 4: { checkPeople(array); break; } case 5: { System.out.println("退出成功,谢谢使用"); System.exit(0); break; } default: { System.out.println("错误,请重新输入"); } } } } public static void addPeople(ArrayList<Contact>array) { Scanner sc=new Scanner(System.in); System.out.println("请输入姓名"); String name=sc.nextLine(); System.out.println("请输入电话号码"); String phone=sc.nextLine(); System.out.println("请输入家庭住址"); String address=sc.nextLine(); Contact s1=new Contact(); s1.setAddress(address); s1.setName(name); s1.setPhone(phone); array.add(s1); } public static void deletePeople(ArrayList<Contact>array) { if(array.isEmpty()) { System.out.println("没有联系人信息,请先添加联系人信息再操作"); } else { Scanner sc=new Scanner(System.in); System.out.println("请输入你要删除联系人名字"); String num=sc.nextLine(); int sum=0; for(int i=0;i<array.size();i++) { Contact stu = array.get(i); if(stu.getName().equals(num)) { array.remove(i); sum++; System.out.println("删除成功"); } } if(sum==0){ System.out.println("删除失败,该联系人信息不存在"); } } } public static void revisePeople(ArrayList<Contact>array) { if(array.isEmpty()) { System.out.println("没有联系人信息,请添加后再进行操作"); } else { Scanner sc1 = new Scanner(System.in); System.out.println("请输入要修改的联系人姓名"); String name1 = sc1.nextLine(); int sum = 0; for(int j = 0;j<array.size();j++) { Contact s2 = array.get(j); if(s2.getName().equals(na分析代码
这段代码实现了一个简单的通讯录管理系统,主要包含以下几个功能:
1. 添加联系人:通过输入姓名、电话号码、家庭住址等信息,将联系人添加到通讯录中。
2. 删除联系人:通过输入联系人姓名,查找并删除该联系人的信息。
3. 修改联系人:通过输入联系人姓名,查找并修改该联系人的信息。
4. 查看联系人:列出通讯录中所有联系人的信息。
5. 退出程序:结束程序运行。
其中,通讯录中的每个联系人都是一个 Contact 对象,包含姓名、电话号码、家庭住址等属性。通讯录本身则是一个 ArrayList,存储多个 Contact 对象。
在主函数中,通过循环不断显示菜单,并根据用户选择调用相应的函数实现功能。每个函数实现相应的功能,例如 addPeople 实现添加联系人,deletePeople 实现删除联系人等。
需要注意的是,这段代码还存在一些问题,例如:
1. 每次添加联系人时都会创建一个新的 Contact 对象,但并没有必要,可以直接创建一个局部变量。
2. 删除联系人时使用了 for 循环遍历整个通讯录,如果通讯录中联系人较多,效率会比较低下,可以考虑使用 Map 存储联系人,以联系人姓名为键值,这样可以更快速地查找和删除联系人。
import java.util.ArrayList; import java.util.Scanner; public class ContactManner { public static void main(String[] args) { ArrayList<Contact> array = new ArrayList(); while (true) { Contact s = new Contact(); s.Menu(); Scanner sc1 = new Scanner(System.in); int d = sc1.nextInt(); switch (d) { case 1: { addPeople(array); System.out.println("添加联系人成功"); break; } case 2: { deletePeople(array); break; } case 3: { revisePeople(array); break; } case 4: { checkPeople(array); break; } case 5: { System.out.println("退出成功,谢谢使用"); System.exit(0); break; } default: { System.out.println("错误,请重新输入"); } } } } public static void addPeople(ArrayList<Contact>array) { Scanner sc=new Scanner(System.in); System.out.println("请输入姓名"); String name=sc.nextLine(); System.out.println("请输入电话号码"); String phone=sc.nextLine(); System.out.println("请输入家庭住址"); String address=sc.nextLine(); Contact s1=new Contact(); s1.setAddress(address); s1.setName(name); s1.setPhone(phone); array.add(s1); } public static void deletePeople(ArrayList<Contact>array) { if(array.isEmpty()) { System.out.println("没有联系人信息,请先添加联系人信息再操作"); } else { Scanner sc=new Scanner(System.in); System.out.println("请输入你要删除联系人名字"); String num=sc.nextLine(); int sum=0; for(int i=0;i<array.size();i++) { Contact stu = array.get(i); if(stu.getName().equals(num)) { array.remove(i); sum++; System.out.println("删除成功"); } } if(sum==0){ System.out.println("删除失败,该联系人信息不存在"); } } } public static void revisePeople(ArrayList<Contact>array) { if(array.isEmpty()) { System.out.println("没有联系人信息,请添加后再进行操作"); } else { Scanner sc1 = new Scanner(System.in); System.out.println("请输入要修改的联系人姓名"); String name1 = sc1.nextLine(); int sum = 0; for(int j = 0;j<array.size();j++) { Contact s2 = array.get(j); if(s2.getName().equals(na扩充代码
me1)) { System.out.println("请输入修改后的姓名"); String name2 = sc1.nextLine(); System.out.println("请输入修改后的电话号码"); String phone = sc1.nextLine(); System.out.println("请输入修改后的家庭住址"); String address = sc1.nextLine(); s2.setName(name2); s2.setPhone(phone); s2.setAddress(address); sum++; System.out.println("修改成功"); } } if(sum == 0) { System.out.println("修改失败,该联系人信息不存在"); } } } public static void checkPeople(ArrayList<Contact>array) { if(array.isEmpty()) { System.out.println("没有联系人信息,请添加后再进行操作"); } else { System.out.println("姓名\t\t电话号码\t\t家庭住址"); for(int k = 0;k<array.size();k++) { Contact s3 = array.get(k); System.out.println(s3.getName() + "\t\t" + s3.getPhone() + "\t\t" + s3.getAddress()); } } } }
这段 Java 代码的功能是什么?
阅读全文