以下是用Java实现上述功能的示例代码:

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

class Message {
    private String content;
    private Date time;

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

    public String getContent() {
        return content;
    }

    public Date getTime() {
        return time;
    }
}

public class ShortMessageSimulation {
    private static List<Message> messages = new ArrayList<>();

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

        int choice;
        do {
            System.out.println("请选择操作:");
            System.out.println("1. 短消息接收");
            System.out.println("2. 短列表显示所有短消息");
            System.out.println("3. 阅读任意一条短消息");
            System.out.println("4. 删除任意一条短消息");
            System.out.println("5. 消除所有短消息");
            System.out.println("6. 短消息发送");
            System.out.println("0. 退出");

            choice = scanner.nextInt();
            scanner.nextLine();

            switch (choice) {
                case 1:
                    receiveMessage(scanner);
                    break;
                case 2:
                    displayMessages();
                    break;
                case 3:
                    readMessage(scanner);
                    break;
                case 4:
                    deleteMessage(scanner);
                    break;
                case 5:
                    clearMessages();
                    break;
                case 6:
                    sendMessage(scanner);
                    break;
                case 0:
                    System.out.println("退出程序。");
                    break;
                default:
                    System.out.println("无效的选择,请重新输入。");
                    break;
            }

            System.out.println();
        } while (choice != 0);

        scanner.close();
    }

    private static void receiveMessage(Scanner scanner) {
        System.out.println("请输入接收到的短消息内容:");
        String content = scanner.nextLine();

        Message message = new Message(content);
        if (messages.size() >= 20) {
            messages.remove(0);
        }
        messages.add(message);

        System.out.println("短消息接收成功。");
    }

    private static void displayMessages() {
        if (messages.isEmpty()) {
            System.out.println("没有短消息。");
            return;
        }

        System.out.println("短列表显示所有短消息:");
        for (int i = 0; i < messages.size(); i++) {
            System.out.println((i + 1) + ". " + messages.get(i).getContent());
        }
    }

    private static void readMessage(Scanner scanner) {
        if (messages.isEmpty()) {
            System.out.println("没有短消息。");
            return;
        }

        System.out.println("请输入要阅读的短消息编号:");
        int index = scanner.nextInt();
        scanner.nextLine();

        if (index < 1 || index > messages.size()) {
            System.out.println("无效的短消息编号。");
            return;
        }

        Message message = messages.get(index - 1);
        System.out.println("短消息内容:" + message.getContent());
        System.out.println("短消息接收时间:" + message.getTime());
    }

    private static void deleteMessage(Scanner scanner) {
        if (messages.isEmpty()) {
            System.out.println("没有短消息。");
            return;
        }

        System.out.println("请输入要删除的短消息编号:");
        int index = scanner.nextInt();
        scanner.nextLine();

        if (index < 1 || index > messages.size()) {
            System.out.println("无效的短消息编号。");
            return;
        }

        messages.remove(index - 1);
        System.out.println("短消息删除成功。");
    }

    private static void clearMessages() {
        messages.clear();
        System.out.println("所有短消息已被清除。");
    }

    private static void sendMessage(Scanner scanner) {
        System.out.println("请输入要发送的短消息内容:");
        String content = scanner.nextLine();

        Message message = new Message(content);
        if (messages.size() >= 20) {
            messages.remove(0);
        }
        messages.add(message);

        System.out.println("短消息发送成功。");
    }
}

在该示例中,使用了一个 Message 类来表示短消息,其中包含短消息的内容和接收时间。短消息列表使用一个 ArrayList 来存储短消息对象。

main 方法中,使用一个 do-while 循环来接收用户的操作选择,根据选择调用相应的方法来执行对应的操作。

receiveMessage 方法用于接收短消息,首先要求用户输入短消息的内容,然后创建一个 Message 对象,并将其添加到短消息列表中。如果短消息总数超过了20条,则删除最早的一条短消息。

displayMessages 方法用于显示所有的短消息,遍历短消息列表并逐条打印出短消息的内容。

readMessage 方法用于阅读指定编号的短消息,首先要求用户输入要阅读的短消息的编号,然后根据编号获取对应的短消息对象,并打印出短消息的内容和接收时间。

deleteMessage 方法用于删除指定编号的短消息,首先要求用户输入要删除的短消息的编号,然后根据编号从短消息列表中删除对应的短消息对象。

clearMessages 方法用于清除所有的短消息,直接调用 clear 方法清空短消息列表。

sendMessage 方法用于发送短消息,与 receiveMessage 方法类似,首先要求用户输入短消息的内容,然后创建一个 Message 对象,并将其添加到短消息列表中。如果短消息总数超过了20条,则删除最早的一条短消息。

请注意,该示例中的用户输入部分使用了 Scanner 类来实现。用户可以通过输入对应的数字来选择操作,然后根据提示输入相应的内容

短消息功能模拟模拟短消息接收和有关操作最多存储20条短消息所编写的程序应包含且不限于如下功能:1短消息接收如果短消息总数超出20条则删除最早的短消息;2短列表显示所有短消息;3阅读任意一条短消息;4删除任意一条短消息;5消除所有短消息;6具有操作功能菜单。7短消息发送用Java编写

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

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