У меня есть приложение ussd, где я создаю интерфейс и с предопределенными параметрами, например 1. моя учетная запись 2. транзакции 3. запрос счета. пользовательские ключи в 1 или 2 или 3 или любые другие предопределенные опции на телефоне. теперь, поскольку вход со всех интерфейсов является одним и тем же значением, чтобы отслеживать прогресс пользователя, я имею состояние, которое я устанавливаю каждый раз, когда пользователь переходит к определенному интерфейсу. теперь моя проблема состоит в том, что состояния становятся слишком много, у меня около 30 состояний, и оператор if else начинает выглядеть как один большой шар спагетти плюс не забывая, что этот подход не масштабируется. любой может помочь мне сделать лучший дизайн, возможно, масштабируемый.Уменьшить if else заявление в моем приложении ussd
if (state == 35) {//exit application
a = mm.exit(uid);
out.println(a);
} else if (state == 3) {
a = view.main_menu_nav(uid, value.trim());
out.println(a);
} else if (state == 4) {
a = view.my_account(uid);
out.println(a);
} else if (state == 5) {
a = view.my_account_nav(uid, value.trim());
out.println(a);
} else if (state == 6) {
String value = USSD_STRING;
a = view.transaction_nav(uid, value.trim());
out.println(a);
} else if (state == 7) {
a = view.deactivate_nav(uid, value.trim());
out.println(a);
}
почему бы не использовать переключатель дело? –