我在过去 5 天工作以了解统一算法在 Prolog 中的工作原理。现在,我想用Java实现这样的算法..
我认为也许最好的方法是使用诸如 Stacks 之类的数据结构来操作字符串并分解其部分。
说清楚:
假设用户输入是:a(X,c(d,X)) = a(2,c(d,Y))。
我已经将它作为一个字符串并将其拆分为两个字符串(Expression1 和 2)。现在,我怎么知道下一个字符是变量还是常量等等。我可以通过嵌套 if 来做到这一点,但在我看来这不是一个好的解决方案。我尝试使用继承,但问题仍然存在(如何我可以知道正在读取的字符类型吗?)