下面是用Java编写的模拟短消息接收和相关操作的程序:

import java.util.ArrayList;
import java.util.Date;
import java.util.Scanner;

class Message {
    private String content;
    private Date timestamp;

    public Message(String content) {
        this.content = content;
        this.timestamp = new Date();
    }

    public String getContent() {
        return content;
    }

    public Date getTimestamp() {
        return timestamp;
    }
}

public class MessageReceiver {
    private ArrayList<Message> messages;

    public MessageReceiver() {
        this.messages = new ArrayList<>();
    }

    public void receiveMessage(String content) {
        if (messages.size() >= 20) {
            messages.remove(0);
        }
        messages.add(new Message(content));
    }

    public void displayMessages() {
        System.out.println("短消息列表:");
        for (int i = 0; i < messages.size(); i++) {
            Message message = messages.get(i);
            System.out.println((i + 1) + ". " + message.getContent() + " (" + message.getTimestamp() + ")");
        }
    }

    public void readMessage(int index) {
        if (index >= 1 && index <= messages.size()) {
            Message message = messages.get(index - 1);
            System.out.println("短消息内容:");
            System.out.println(message.getContent());
        } else {
            System.out.println("无效的短消息索引!");
        }
    }

    public void deleteMessage(int index) {
        if (index >= 1 && index <= messages.size()) {
            messages.remove(index - 1);
            System.out.println("成功删除短消息!");
        } else {
            System.out.println("无效的短消息索引!");
        }
    }

    public void deleteAllMessages() {
        messages.clear();
        System.out.println("成功删除所有短消息!");
    }

    public static void main(String[] args) {
        MessageReceiver messageReceiver = new MessageReceiver();
        Scanner scanner = new Scanner(System.in);

        while (true) {
            System.out.println("\n操作功能菜单:");
            System.out.println("1. 接收短消息");
            System.out.println("2. 显示短消息列表");
            System.out.println("3. 阅读短消息");
            System.out.println("4. 删除短消息");
            System.out.println("5. 删除所有短消息");
            System.out.println("0. 退出程序");
            System.out.print("请选择操作(0-5): ");

            int choice = scanner.nextInt();
            scanner.nextLine(); // Consume newline character

            switch (choice) {
                case 1:
                    System.out.print("请输入短消息内容: ");
                    String content = scanner.nextLine();
                    messageReceiver.receiveMessage(content);
                    System.out.println("成功接收短消息!");
                    break;
                case 2:
                    messageReceiver.displayMessages();
                    break;
                case 3:
                    System.out.print("请输入要阅读的短消息索引: ");
                    int readIndex = scanner.nextInt();
                    messageReceiver.readMessage(readIndex);
                    break;
                case 4:
                    System.out.print("请输入要删除的短消息索引: ");
                    int deleteIndex = scanner.nextInt();
                    messageReceiver.deleteMessage(deleteIndex);
                    break;
                case 5:
                    messageReceiver.deleteAllMessages();
                    break;
                case 0:
                    System.out.println("退出程序...");
                    scanner.close();
                    System.exit(0);
                default:
                    System.out.println("无效的选择!");
                    break;
            }
        }
    }
}

这个程序创建了一个MessageReceiver类来模拟短消息的接收和相关操作。每个短消息都是一个Message对象,包含了短消息的内容和接收时间戳。

程序通过一个无限循环来实现操作功能菜单的显示和用户选择。用户可以选择接收短消息、显示短消息列表、阅读短消息、删除短消息或删除所有短消息。选择0将退出程序。

注意:本程序假设用户输入都是有效的,没有进行输入验证。在实际应用中,应该对用户输入进行验证和错误处理

用java模拟短消息接收和有关操作最多存储20条短消息所编写的程序应包含且不限于如下功能:①短消息接收如果短消息总数超出20条则删除最早的短消息。②短列表显示所有短消息。③阅读任意一条短消息。④删除任意一条短消息。⑤消除所有短消息。⑥具有操作功能菜单。

原文地址: https://www.cveoy.top/t/topic/hJsJ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录