gpt4 book ai didi

java - 使用状态模式进行字符串解析

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

我的编程作业的一部分需要使用状态模式解析字符串。明确要求使用状态模式,因此不允许其他选项。

示例字符串为:“update user filter userId=user3 set name=xxx ”。 (粗体为关键字)。

请求如下:

While parsing the query you should use State Pattern. There are four states: OPERATOR, OBJECT, FILTER and VALUES.

我查看了有关状态模式的示例,我想我明白了,但我无法弄清楚如何将其应用于字符串解析。

如果有人给我一些提示,我会很高兴。

最佳答案

首先创建您的状态接口(interface)。也许使用一种方法:parse

创建 4 个具体状态。实现每个仅解析字符串的一部分,您的上下文将负责拆分字符串并更改状态。

在您的上下文类中,您执行以下操作:

  • 您知道 OperatorState 始终是第一个,因此 init
  • 你的上下文状态。读取字符串直到到达下一个
  • 关键字(“过滤器”)将您已读取的字符串移至当前状态(运算符)
  • 将当前状态更改为下一个状态 (FilterState)

等等...

如果您了解状态模式,那么这应该足以构建解决方案。

注意:您可以拥有一个包含关键字和状态的字典,以便您可以将其自动化,但就您而言,我认为一个简单的解决方案就足够了。

祝你好运

关于java - 使用状态模式进行字符串解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10250100/

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