gpt4 book ai didi

java - 解析大量命令的最智能方法?

转载 作者:行者123 更新时间:2023-12-01 19:39:00 25 4
gpt4 key购买 nike

对于一项作业,我需要创建一个基本处理器,可以使用简单的函数,例如 ADD、SUB、LOAD、STORE 和 JUMP

作为输入,我必须使用文本文件,解析 20 个不同的命令,然后执行它们。

我的问题是如何最好地解析字符串,将它们与相应的命令匹配然后执行它们?

例如,我可以逐行解析文件,标记字符串,通过包含所有命令的大量 if-else 语句发送标记,然后通过为每个命令创建一个类(事先)来调用命令,然后执行该类。

但我认为这不是最好的方法。有没有更好的方法或者我可以改进我的示例中的某些内容?

最佳答案

将命令作为接口(interface)并将其映射到String

interface Command{
void execute();
}

Map<String, Command> map = new HashMap<>();

接下来相应地映射命令的所有实现:

map.put("ADD", () -> System.out.println("Calling Add"));

然后,一旦您对线路进行标记,只需搜索 map 并执行命令,并且不要忘记检查命令是否存在。

for (String token : tokens){
map.getOrDefault(token, () -> System.out.println("Command " + token + " not found")).execute();
}

关于java - 解析大量命令的最智能方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56065933/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com