Задать вопрос
@Starvings

Как осуществить переход из одного switch-case в другой и вернуться обратно?

Нужна помощь с логикой реализации функционала, рабочих идей у меня к сожалению нет, все что пробовал реализовать не получается.

На экране есть несколько текстовых полей и иконок. Так же есть 2 кнопки, на которые выводятся определенные значения. В зависимости от того, какую кнопку нажал пользователь меняется:

отображаемая информация в текстовых полях (количество текстовых полей может уменьшаться или увеличиваться, обычно в пределах +/-1);
иконки (контент, а так же их количество);
выводимая информация на кнопки.

Значения для кнопок берут из БД по их ID. В setNEXT_ACTION_one/two передается ID, и через setText устанавливается значение. Выбор и ветвление происходит по средством switch-case:

public void switchAction_one(){
        switch (getNEXT_ACTION_one()){
            case 1: setStages_move(2); setNEXT_ACTION_one(3); setNEXT_ACTION_two(4);
                break;
            case 3: setStages_move(4); setNEXT_ACTION_one(5); setNEXT_ACTION_two(4);
                break;
            case 5: setStages_move(6); setNEXT_ACTION_one(7); setNEXT_ACTION_two(8);
                break;
            case 7: setStages_move(8); setNEXT_ACTION_one(9); setNEXT_ACTION_two(10);
                break;
            case 9: setStages_move(9); setNEXT_ACTION_one(0); setNEXT_ACTION_two(0); 
                break;
        }
    }


Мне нужно реализовать следующую логику: Когда попадается определенное значение, например case 10, то ветвление переходит в совершенно другую ветку switch-case, логично, что это будет реализовано в другом методе. Там у пользователя будет счетчик нажатий на кнопки. Какие-то действия уменьшают счетчик, другие действия увеличивают счетчик. При достижении определенного значения, процесс должен вернуться к исходному дереву switch-case, к следующему значению (переход был на "10", значит вернуться должен к "11".

Буду признателен за любые конструктивные предложения.
  • Вопрос задан
  • 170 просмотров
Подписаться 1 Средний Комментировать
Решения вопроса 1
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
Читайте про конечные автоматы.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
mayton2019
@mayton2019 Куратор тега Java
Bigdata Engineer
Как осуществить переход из одного switch-case в другой и вернуться обратно

Вызвать метод.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы