我正在尽可能接近正式定义的 DFA 作为学习练习(和博客 Material )
我计划在定义中涉及集合的地方使用 java.util.Set。
该定义涉及一组元组来定义合法的状态转换:(state,symbol) -> nextState。
我有一个 Transition 类,其成员包括 state、symbol 和 nextState。我已经实现了 equals() 和 hashCode() 来指示如果两个 Transitions 在状态和符号上匹配则它们是相等的。然后我有一个 java.util.Set 的 Transition 实例。
在我的处理算法中,当我读取下一个符号时,我有当前状态。我预计使用这两个构建一个 Transition 对象以从 Set 中提取匹配的 Transition,然后它会告诉我下一个状态,然后我可以迭代。
但是 - 我看不到任何提取 java.util.Set 成员以供进一步使用的方法。我可以删除(对象 o),但只会返回 boolean 值。
我做错了什么?
最佳答案
Set 可能不是您想要为此使用的。我的建议是使用 List
关于java - 我可以使用 java.util.Set 在 Java 中为 DFA 实现状态转换吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/444889/