В чем различия между if, else и else if? - PullRequest
6 голосов
/ 17 сентября 2009

Я пытаюсь различить разницу между

if 
else 
else if 

Когда вы их используете, а когда нет?

У меня домашнее задание с кучей экземпляров, и я сталкиваюсь с ошибкой кода из-за незнания различий между ними.

Может кто-нибудь определить, как их использовать?

Ответы [ 17 ]

1 голос
/ 17 сентября 2009

Это основные решения, которые вы принимаете на большинстве языков программирования; это поможет вам определить последовательность действий, которые будет выполнять ваша программа. , если сообщает компилятору, что у вас есть вопрос, а вопрос - это условие между скобками

if (condition) {
    thingsToDo()..
}

часть else является дополнением к этой структуре, чтобы сообщить компилятору, что делать, если условие ложно

if (condition) {
    thingsToDo()..
} else {
    thingsToDoInOtherCase()..
}

Вы можете объединить их в , если , когда первое условие ложно, но вы хотите задать другой вопрос, прежде чем решить, что делать.

if (condition) {
    thingsToDo()..
} else if (condition2) {
    thingsToDoInTheSecondCase()..
}else {
    thingsToDoInOtherCase()..
}
1 голос
/ 17 сентября 2009

Синтаксис оператора if равен

if(condition)
    something; // executed, when condition is true
else
    otherthing; // otherwise this part is executed

Таким образом, else является частью конструкции if ( что-то и другое часто являются составными операторами, заключенными в {}, а else часть, на самом деле необязательно). И else if - это комбинация двух if с, где , остальное само по себе if.

if(condition1)
    something;
else if(condition2)
    otherthing;
else
    totallydifferenthing;
1 голос
/ 17 сентября 2009

else if может использоваться вместе с 'if' и 'else' для дальнейшего разрушения логики

//if less than zero
if( myInt < 0){
      //do something
}else if( myInt > 0 && myInt < 10){
//else if between 0 and 10      
      //do something
}else{
//else all others  
      //do something
}
1 голос
/ 17 сентября 2009

Оператор if использует результаты логического выражения, чтобы решить, будет ли выполнен один из двух блоков кода.

С этим кодом

if (logical expression) {
    code block 1;
} else {
    code block 2;
}

если логическое выражение истинно, будут выполняться только операторы в блоке кода 1; если ложь, только операторы в блоке кода 2.

В случае, если необходимо выполнить несколько похожих тестов (например, если мы тестируем число, которое будет меньше нуля, равно нулю или больше нуля), то второй тест может быть помещен в качестве первого утверждения блок кода else.

if (logical expression 1) {
    code block 1;
} else {
    if (logical expression 2) {
        code block 2;
    } else {
        code block 3;
    }
}

В этом случае кодовый блок 1 выполняется, если логическое выражение 1 истинно; блок кода 2, если логическое выражение 1 ложно, а логическое выражение 2 истинно; кодовый блок 3, если оба логических выражения ложны.

Очевидно, что это можно повторить с другим оператором if в качестве первого оператора блока кода 3.

Оператор else if является просто переформатированной версией этого кода.

if (logical expression 1) {
    code block 1;
} else if (logical expression 2) {
    code block 2;
} else {
    code block 3;
}
0 голосов
/ 25 ноября 2016

вы можете думать о if и else как о паре, которая удовлетворяет two actions для one given condition.
ex: if идет дождь, возьми зонтик else иди без зонта.
Есть два действия

  • иди с зонтиком
  • без зонта

и оба эти действия связаны с одним условием, i.e is it raining?

Теперь рассмотрим сценарий, в котором есть несколько условий и действий, связанных вместе.
ex: if ты голоден and ты не сломлен, наслаждайся едой в KFC, else if ты голоден but ты сломлен, попытайся пойти на компромисс, else if ты не голоден , но вы просто хотите потусоваться в кафе, попробовать startbucks, else сделать что-нибудь, только не спрашивайте меня о голоде или еде. У меня есть вещи поважнее.
Оператор else if для объединения всех действий, которые попадают между условиями if и else.

0 голосов
/ 13 апреля 2017

Что говорит if:

Будь я правдой или нет, всегда проверяйте и другие условия.

Что говорит else if:

Только проверьте другие условия, если я не был правдой.

0 голосов
/ 25 ноября 2016

Если и иначе, если оба используются для проверки условий.

Я беру случай с If и else ..

В случае, если компилятор проверяет все случаи, является ли оно истинным или ложным. если не выполняется ни один блок, тогда будет выполнена другая часть.

в случае else, если компилятор останавливает поток программы, когда он получил ложное значение. он не читает всю программу. Для повышения производительности мы используем еще, если.

Но оба имеют свое значение в зависимости от ситуации

Я беру пример меню заказа если я использую другое, то тогда это будет хорошо потому что пользователь может проверить только один также. и это даст ошибку поэтому я использую, если здесь ..

 StringBuilder result=new StringBuilder();  
            result.append("Selected Items:");  
            if(pizza.isChecked()){  
                result.append("\nPizza 100Rs");  
                totalamount+=100;  
            }  
            if(coffe.isChecked()){  
                result.append("\nCoffe 50Rs");  
                totalamount+=50;  
            }  
            if(burger.isChecked()){  
                result.append("\nBurger 120Rs");  
                totalamount+=120;  
            }  
            result.append("\nTotal: "+totalamount+"Rs");  
            //Displaying the message on the toast  
            Toast.makeText(getApplicationContext(), result.toString(), Toast.LENGTH_LONG).show();  
        }  

now else if case

if (time < 12) {
    greeting = "Good morning";
} else if (time < 22) {
    greeting = "Good day";
} else {
    greeting = "Good evening";
}

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...