为了账号安全,请及时绑定邮箱和手机立即绑定

扫描仪的操作历史记录

扫描仪的操作历史记录

慕雪6442864 2023-10-12 17:23:37
大家好,我正在做作业,我想了解如何正确完成代码中的第三部分 - 3.查看操作历史记录。(用户执行的所有操作的列表,使用数组以格式存储此信息:“[操作索引]。[操作名称] - [用户输入]”。我还有一个问题 - 应用程序应该工作并接受用户输入,直到他想要退出程序。  Scanner in = new Scanner(System.in);System.out.println("Please select operation");        System.out.println("1.Encode");        System.out.println("2.Decode");        System.out.println("3.View operation history");        System.out.println("4.Exit program");        Integer userInput = Integer.valueOf(in.nextLine());        if (userInput.equals(1)) {            System.out.println("You chosen encoding operation");            System.out.println("Please choose codec name  - caesar or morse");            String userInputEncode = in.nextLine().toLowerCase();            if (userInputEncode.equals("caesar")) {                System.out.println("Enter text to encode");                String userInputEncode2 = in.nextLine().toLowerCase();                System.out.println("Encoded text: " + caesarEncoder.encode(userInputEncode2));            } else if (userInputEncode.equals("morse")) {                System.out.println("Enter text to encode");                String userInputEncode3 = in.nextLine().toLowerCase();                System.out.println("Encoded text: " + morseEncoder.encode(userInputEncode3));            } else                System.out.println("You entered wrong codec name, try one more time");        } else if (userInput.equals(2)) {            System.out.println("You chosen decoding operation");            System.out.println("Please choose codec name  - caesar or morse");            String userInputDecode = in.nextLine().toLowerCase();            if (userInputDecode.equals("caesar")) {                System.out.println("Enter text to decode");                String userInputDecode2 = in.nextLine().toLowerCase();                System.out.println("Decoded text: " + caesarDecoder.decode(userInputDecode2));            } 
查看完整描述

1 回答

?
千万里不及你

TA贡献1784条经验 获得超9个赞

您可能需要一个循环来检查用户是否键入了数字 4。


然后,您可以在循环之前创建一个列表,其中将存储用户在程序执行期间键入的所有历史记录。


然后在选择数字3的情况下,您可以使用该列表来获取历史数据,然后打印您需要的所有数据


下面是一个简单而快速的示例(不是最好的方法):


import java.util.List;

import java.util.ArrayList;

import java.util.Scanner;


Scanner in = new Scanner(System.in);

List<String> operationHistory=new ArrayList<String>();

Integer userInput = null;

do{

    System.out.println("Please select operation");

    System.out.println("1. aaa");

    System.out.println("2. bbb");

    System.out.println("3. print selection history");

    System.out.println("4. exit");

    userInput = Integer.valueOf(in.nextLine());


    if (userInput.equals(1)) {

        System.out.println("Please type something");

        String userInputEncode = in.nextLine().toLowerCase();

        operationHistory.add("1. aaa - " + userInputEncode);

    }else if (userInput.equals(2)) {.

        System.out.println("Please type something");

        String userInputEncode = in.nextLine().toLowerCase();

        operationHistory.add("2. bbb - " + userInputEncode);

    }else if (userInput.equals(3)) {

        System.out.println("Operation History:");

        for(String operationitem:operationHistory){

            System.out.println(operationitem);

        }

        System.out.println("-------------");

    }


}while(!userInput.equals(4));

in.close();

System.out.println("Program was closed by user");

这只是一个与您的代码类似的示例,您可以使用它来了解如何解决您的问题以及循环和列表如何工作


然后您可能想要管理一些意外的输入


查看完整回答
反对 回复 2023-10-12
  • 1 回答
  • 0 关注
  • 105 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信