首页 > 解决方案 > 在 switch 语句中访问对象

问题描述

我目前对解决此问题的最有效方法感到困惑。我目前的目标是为页面上的按钮单击编写代码。

如果用户满足一定数量的要求,则会在特定选项卡上显示一条消息。如果他们对消息必须提供的内容感兴趣,他们将单击重新计算按钮,然后该按钮将在幕后进行一些计算并显示不同版本的消息。

现在,原始消息在 switch 语句中具有特定情况下的所有逻辑。我的问题是,将这个具有用户数据的对象带到另一个案例陈述中的最佳方法是什么。

以下是我目前拥有的代码:

public final AjaxResponse pageLevelOnAjaxEvent(final String event, final 
HashMap<String, String> parameters) {
    final AjaxEvent ajaxEvent = AjaxEvent.translateEvent(event);
      switch (ajaxEvent) {

      case EXAMPLE:

        final InfoObject test = new InfoObject(Keys.get(Keys.KEY_RANDOM));


        final InfoObjectResponse objectResponse = test.generateInfo(get400RuntimeData(), getApplication());


        ajaxActions.addAll(infoView.updateView(test, objectResponse, string, string2, "735"));
            break;

        case BUTTON_CODE:
            break;

}

我的问题是,每当我单击按钮启动BUTTON_CODE事件时,testandobjectResponse对象都会返回 null,即使它们运行EXAMPLE事件中的方法。

我真的不想重新运行我在EXAMPLE 事件中运行的方法,而且我不应该这样做,因为这些对象已经被填充了。

我的问题是如何在 BUTTON_CODE 事件中访问该数据?如果我在 ajax 方法中声明这是它的一部分的对象,则在激活 BUTTON_CODE 事件时它将始终为 null,因为它必须被初始化,因此将始终返回该值。

那么最好的方法是什么?提前致谢。

标签: javaajaxswitch-statementlogic

解决方案


推荐阅读