Как сделать несколько, если без вложенных, если - PullRequest
0 голосов
/ 31 января 2020
            if (jamholderku.equals("1")){
                params.put("sesi1", jamholderku);
            }else {
                params.put("sesi1", jamholder);
            }

            if (jamholderku2.equals("1")){
                params.put("sesi2", jamholderku2);
            }else {
                params.put("sesi2", jamholder2);
            }

            if (jamholderku3.equals("1")){
                params.put("sesi3", jamholderku3);
            }else {
                params.put("sesi3", jamholder3);
                Log.d("paramskutes", jamholder3);
            }

            if (jamholderku4.equals("1")){
                params.put("sesi4", jamholderku4);
            }else {
                params.put("sesi4", jamholder4);
            }

            if (jamholderku2_1.equals("1")){
                params.put("sesi2_1", jamholderku2_1);
            }else {
                params.put("sesi2_1", jamholder2_1);
            }

            if (jamholderku2_2.equals("1")){
                params.put("sesi2_2", jamholderku2_2);
            }else {
                params.put("sesi2_2", jamholder2_2);
            }

            if (jamholderku2_3.equals("1")){
                params.put("sesi3", jamholderku2_3);
            }else {
                params.put("sesi3", jamholder2_3);
            }

            if (jamholderku2_4.equals("1")){
                params.put("sesi4", jamholderku2_4);
            }else {
                params.put("sesi4", jamholder2_4);
            }

            if (jamholderku3_1.equals("1")){
                params.put("sesi2_1", jamholderku3_1);
            }else {
                params.put("sesi2_1", jamholder3_1);
            }

            if (jamholderku3_2.equals("1")){
                params.put("sesi2_2", jamholderku3_2);
            }else {
                params.put("sesi2_2", jamholder3_2);
            }

            if (jamholderku3_3.equals("1")){
                params.put("sesi3", jamholderku3_3);
            }else {
                params.put("sesi3", jamholder3_3);
            }

            if (jamholderku3_4.equals("1")){
                params.put("sesi4", jamholderku3_4);
            }else {
                params.put("sesi4", jamholder3_4);
            }

            if (jamholderku4_1.equals("1")){
                params.put("sesi2_1", jamholderku4_1);
            }else {
                params.put("sesi2_1", jamholder4_1);
            }

            if (jamholderku4_2.equals("1")){
                params.put("sesi2_2", jamholderku4_2);
            }else {
                params.put("sesi2_2", jamholder4_2);
            }

            if (jamholderku4_3.equals("1")){
                params.put("sesi3", jamholderku4_3);
            }else {
                params.put("sesi3", jamholder4_3);
            }

            if (jamholderku4_4.equals("1")){
                params.put("sesi4", jamholderku4_4);
            }else {
                params.put("sesi4", jamholder4_4);
            }
            return params;

когда первый оператор if правильный, он не выполнит другой оператор if, если EX: if (jamholderku.equals("1)) == True, тогда он выполнит params.put (blablabla), но не выполнит другой оператор if, такой как if (jamholderku2.equals("1")) но если он выполняет if (jamholderku2.equals("1")), он не будет выполняться if (jamholderku3.equals("1")), даже если это правда, не могли бы вы мне помочь? потому что крайний срок был из-за завтрашнего дня, мне нужно отправить его, или меня выгнали из моей команды

Добавление: Пример, скажем, мы используем if else

if (jamholderku.equals("1")){
    params.put("sesi1", jamholderku);
}else if (jamholderku.equals("0"){
    params.put("sesi1", jamholder);
}else if (jamholderku2.equals("1"){
    params.put("sesi2", jamholder2)
}

если первое, если true, то остальные, если не будут выполнены, так что моя база данных будет нулевой

, и если я использую вложенный оператор

if (jamholderku.equals("1")){
    if (jamholderku2.equals("1"){
        params.put("sesi2", jamholderku2)
    }
   params.put("sesi1", jamholderku)
}

, если пользователь выбирает вариант сеанса 2, тогда только jamholderku2 установлен в 1, это делает jamholderku ложным, поэтому весь код не будет выполняться

Редактировать: я хочу сделать программу, программа проверит, загрузит, отключит вещь. Вот как это работает: Пользователь выбирает дату (например: 21-01-2020) Пользователь выбирает сеанс, есть 4 сеанса (сеанс 1, сеанс 2, сеанс 3, сеанс 4), и пользователь может выбрать только 1 сеанс, пример пользователя выберите (сеанс 1), чтобы программа загружала выбранную дату и выбранный сеанс на сервер, и когда другой пользователь захочет использовать эту программу, второму пользователю также потребуется выполнить шаг 1, но программа проверит выбранную дату. существует сеанс, который используется другим пользователем, если существует сеанс, который используется другим пользователем, например, первый пользователь в дате 21-01-2020 выбирает сеанс 1, поэтому второй пользователь при выборе даты 21-01-2020, не может выбрать сессию 1, но все еще может выбрать сессию 2, 3, 4, и эта программа позволяет пользователю выбрать несколько дат и сессий

1 Ответ

0 голосов
/ 31 января 2020

Может быть, мы все должны сейчас прийти к единому пониманию.

Этот код проверит оператор if, и после нахождения первого ИСТИНА он остановит все проверки:

String str = "hello";
if(str.equals("hello"){
   dosomething();
} else {
   dosomethingelse();
}

Так что прямо здесь он будет выполнять dosomething (), а dosomethingelse () не будет выполнен.

Вы приводите нам пример, подобный следующему:

String str = "huhu";
if(str.equals("hello"){
   dosomething_1();
} else {
   dosomethingelse_1();
}

if(str.equals("huhu"){
   dosomething_2();
} else {
   dosomethingelse_2();
}

Операторы if не являются вложенными. Программа проверит первый if и выполнит dosomethingelse_1 (), а после этого проверит второй if и выполнит dosomething_2 ();

Вложенный оператор if будет выглядеть примерно так:

String str = "hello";
if(str.equals("hello"){
   dosomething();
} else {
    if(str.equals("huhu"){
       dosomething();
    } else {
       dosomethingelse();
    }
}

И в этом случае программа не достигнет if (str.equals ("huhu")), потому что она уже выполнила истинное.

Так что в основном мы не понимаем ваш вопрос.

...