Java 模拟短消息功能:接收、显示、阅读、删除和清除
以下是使用Java语言编写的模拟短消息功能的程序:\n\njava\nimport java.util.ArrayList;\nimport java.util.Date;\nimport java.util.Scanner;\n\nclass Message {\n private String content;\n private Date timestamp;\n\n public Message(String content) {\n this.content = content;\n this.timestamp = new Date();\n }\n\n public String getContent() {\n return content;\n }\n\n public Date getTimestamp() {\n return timestamp;\n }\n}\n\npublic class MessageSimulator {\n private ArrayList<Message> messages;\n\n public MessageSimulator() {\n messages = new ArrayList<>();\n }\n\n public void receiveMessage(String content) {\n if (messages.size() >= 20) {\n messages.remove(0);\n }\n Message message = new Message(content);\n messages.add(message);\n }\n\n public void displayMessages() {\n for (int i = 0; i < messages.size(); i++) {\n Message message = messages.get(i);\n System.out.println((i + 1) + ". " + message.getContent() + " (" + message.getTimestamp() + ")");\n }\n }\n\n public void readMessage(int index) {\n if (index >= 1 && index <= messages.size()) {\n Message message = messages.get(index - 1);\n System.out.println("Message: " + message.getContent());\n System.out.println("Timestamp: " + message.getTimestamp());\n } else {\n System.out.println("Invalid message index!");\n }\n }\n\n public void deleteMessage(int index) {\n if (index >= 1 && index <= messages.size()) {\n messages.remove(index - 1);\n System.out.println("Message deleted.");\n } else {\n System.out.println("Invalid message index!");\n }\n }\n\n public void clearMessages() {\n messages.clear();\n System.out.println("All messages cleared.");\n }\n\n public void displayMenu() {\n System.out.println("Message Simulator Menu");\n System.out.println("1. Receive message");\n System.out.println("2. Display messages");\n System.out.println("3. Read message");\n System.out.println("4. Delete message");\n System.out.println("5. Clear all messages");\n System.out.println("6. Exit");\n }\n\n public static void main(String[] args) {\n MessageSimulator simulator = new MessageSimulator();\n Scanner scanner = new Scanner(System.in);\n\n int choice = 0;\n\n while (choice != 6) {\n simulator.displayMenu();\n System.out.print("Enter your choice: ");\n choice = scanner.nextInt();\n\n switch (choice) {\n case 1:\n System.out.print("Enter message content: ");\n scanner.nextLine(); // Consume newline character\n String content = scanner.nextLine();\n simulator.receiveMessage(content);\n System.out.println("Message received.");\n break;\n case 2:\n simulator.displayMessages();\n break;\n case 3:\n System.out.print("Enter message index: ");\n int index = scanner.nextInt();\n simulator.readMessage(index);\n break;\n case 4:\n System.out.print("Enter message index: ");\n index = scanner.nextInt();\n simulator.deleteMessage(index);\n break;\n case 5:\n simulator.clearMessages();\n break;\n case 6:\n System.out.println("Exiting...");\n break;\n default:\n System.out.println("Invalid choice!");\n break;\n }\n\n System.out.println();\n }\n\n scanner.close();\n }\n}\n\n\n该程序通过创建Message类来表示短消息,其中包含消息内容和时间戳。MessageSimulator类提供了接收、显示、阅读、删除和清除短消息的方法。程序使用一个ArrayList来存储短消息,当短消息总数超过20条时,会删除最早的一条短消息。程序还提供一个操作功能菜单,用户可以选择不同的操作。\n\n在main方法中,程序创建了一个MessageSimulator对象和一个Scanner对象来接收用户输入。然后,使用一个循环来显示菜单,并根据用户的选择执行相应的操作,直到用户选择退出。\n\n注意:为了简化示例,该程序假设用户输入的内容都是有效的,没有进行输入验证。在实际应用中,需要根据需求进行相应的输入验证和错误处理。
原文地址: https://www.cveoy.top/t/topic/pqjI 著作权归作者所有。请勿转载和采集!