¿Cuáles son las diferencias entre if, else y else if?

Estoy tratando de discernir la diferencia entre

if else else if 

¿Cuándo los usas y cuándo no?

Tengo una tarea asignada con un montón de instancias y me estoy topando con un error de código debido a que no sé las diferencias entre cada una.

¿Puede alguien por favor definir cómo usar estos?

 **IF** you are confused read the c# spec **ELSE IF** you are kind of confused read some books **ELSE** everything should be OK. 

🙂

Una sentencia if sigue este tipo de estructura:

 if (condition) { // executed only if "condition" is true } else if (other condition) { // executed only if "condition" was false and "other condition" is true } else { // executed only if both "condition" and "other condition" were false } 

La parte if es el único bloque que es absolutamente obligatorio. else if permite decir “ok, si la condición anterior no fue verdadera, entonces si esta condición es verdadera …”. El otro dice “si ninguna de las condiciones anteriores fuera cierta …”

Puede tener múltiples else if bloques, pero solo uno if block y solo uno (o cero) else bloques.

If-elseif-else puede escribirse como un nested if-else. Estos son (lógicamente hablando) equivalentes:

 if (A) { doA(); } else if (B) { doB(); } else if (C) { doC(); } else { doX(); } 

es lo mismo que:

 if (A) { doA(); } else { if (B) { doB(); } else { if (C) { doC(); } else { doX(); } } } 

El resultado es que, en última instancia, solo se doA uno de doA , doB , doC o doX .

If, else y else if son todas las construcciones para ayudar al código de ‘ramificación’. Básicamente, los empleas cuando quieres tomar una decisión.

Un ejemplo sería ‘si hace sol, voy a salir. de lo contrario, me quedaré dentro ‘

En código (ignorando las cosas extra)

 if (sunny) { goOutside(); } else { stayInside(); } 

PUEDE usar declaraciones ‘else if’ si desea agregar condiciones ‘adicionales’. Extendiendo el ejemplo anterior, “si hace sol, saldré afuera. Si es tormentoso, iré al sótano, de lo contrario me quedaré dentro”

En codigo

 if (sunny) { goOutside(); } else if (stormy) { goDownstairs(); } else { stayInside(); } 

Sección EDITAR:

Aquí es cómo se pueden escribir múltiples condiciones y condiciones. El siguiente ejemplo se puede escribir de al menos dos maneras:

‘Si hace sol y hace calor, ve afuera. Si hace sol y hace frío, no hagas nada.

 if (sunny) { if (warm) { goOutside(); } else if (cold) { doNothing(); } } 

O

 if (sunny && warm) { goOutside(); } else if (sunny && cold) { doNothing(); } 

No hay ” else if “. Tienes lo siguiente:

 if (condition) statement or block 

O:

 if (condition) statement or block else statement or block 

En el primer caso, la instrucción o el bloque se ejecutan si la condición es verdadera (diferente de 0). En el segundo caso, si la condición es verdadera, la primera instrucción o bloque se ejecuta, de lo contrario se ejecuta la segunda instrucción o bloque.

Entonces, cuando escribes ” else if “, es una ” else statement “, donde la segunda sentencia es una sentencia if . Podría tener problemas si intenta hacer esto:

 if (condition) if (condition) statement or block else statement or block 

El problema aquí es que quiere que ” else ” se refiera al primer ” if “, pero en realidad se está refiriendo al segundo. Arregla esto haciendo:

 if (condition) { if (condition) statement or block } else statement or block 

Explicación del pseudocódigo de Dead Simple:

 /* If Example */ if(condition_is_true){ do_this } now_do_this_regardless_of_whether_condition_was_true_or_false /* If-Else Example */ if(condition_is_true){ do_this }else{ do_this_if_condition_was_false } now_do_this_regardless_of_whether_condition_was_true_or_false /* If-ElseIf-Else Example */ if(condition_is_true){ do_this }else if(different_condition_is_true){ do_this_only_if_first_condition_was_false_and_different_condition_was_true }else{ do_this_only_if_neither_condition_was_true } now_do_this_regardless_of_whether_condition_was_true_or_false 

Creo que es útil pensar en el “otro” como la palabra OTHERWISE.

así que lo leerías así:

 if (something is true) { // do stuff } otherwise if (some other thing is true) { // do some stuff } otherwise { // do some other stuff :) } 
 if (condition) { thingsToDo().. } else if (condition2) { thingsToDoInTheSecondCase().. } else { thingsToDoInOtherCase().. } 

Quieren decir exactamente lo que quieren decir en inglés.

SI una condición es verdadera, haga algo, ELSE (de lo contrario) SI otra condición es verdadera, haga algo, ELSE haga esto cuando todo lo demás falla.

Tenga en cuenta que no hay otra cosa si construye específicamente, solo si y si no , pero la syntax le permite colocar otra y si están juntas, y la convención es no anidarlas más profundamente cuando lo haga. Por ejemplo:

 if( x ) { ... } else if( y ) { ... } else { ... } 

Es sintácticamente idéntico a:

 if( x ) { ... } else { if( y ) { ... } else { ... } } 

La syntax en ambos casos es:

 if ** else ** 

y si es en sí mismo una statement, de modo que la syntax por sí sola admite el uso de else si

 if (numOptions == 1) return "if"; else if (numOptions > 2) return "else if"; else return "else"; 

La syntax de la sentencia if es

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

Entonces, básicamente, else es una parte de if construct ( algo y otra cosa son a menudo declaraciones compuestas encerradas en {} y la else parte es, de hecho, opcional). Y else if es una combinación de dos if s, donde otra cosa es un if mismo.

 if(condition1) something; else if(condition2) otherthing; else totallydifferenthing; 

La instrucción if utiliza los resultados de una expresión lógica para decidir si se ejecutará uno de los dos bloques de código.

Con este codigo

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

si la expresión lógica es verdadera, solo se ejecutarán las instrucciones en el bloque de código 1; Si es falso, solo las declaraciones en el bloque de código 2.

En el caso de que se realicen múltiples pruebas similares (por ejemplo, si estamos probando que un número es menor que cero, igual a cero o más que cero), entonces la segunda prueba se puede colocar como la primera statement del código else. bloquear.

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

En este caso, el bloque de código 1 se ejecuta si la expresión lógica 1 es verdadera; bloque de código 2 si la expresión lógica 1 es falsa y la expresión lógica 2 es verdadera; bloque de código 3 si ambas expresiones lógicas son falsas.

Obviamente, esto se puede repetir con otra instrucción if como la primera instrucción del bloque de código 3.

La instrucción else si es simplemente una versión reformateada de este código.

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

El else if se puede usar junto con ‘if’, y ‘else’ para desglosar aún más la lógica

 //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 } 

Esos son los órdenes de decisión básicos que tiene en la mayoría de los lenguajes de progtwigción; Te ayuda a decidir el flujo de acciones que tu progtwig va a hacer. El if está indicando al comstackdor que tiene una pregunta, y la pregunta es la condición entre paréntesis

 if (condition) { thingsToDo().. } 

La parte else es una adición a esta estructura para decirle al comstackdor qué hacer si la condición es falsa

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

puede combinarlos para formar otra cosa si es cuando la primera condición es falsa pero desea hacer otra pregunta antes de decidir qué hacer.

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

Si y si no se usan ambos para probar las condiciones.

Tomo el caso de si y si no ..

En el caso de si el comstackdor verifica todos los casos, sea verdadero o falso. Si no se ejecuta un bloque, se ejecutará la otra parte.

en el caso de else si el comstackdor detiene el flujo del progtwig cuando obtiene un valor falso. no lee todo el progtwig. Por lo tanto, mejor rendimiento que utilizamos si.

Pero ambos tienen su importancia según la situación.

Tomo un ejemplo del menú de pedido de foor, si uso otro, si entonces se adaptará bien porque el usuario también puede marcar uno. y dará error, así que uso si aquí ..

  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"; } 

Aquí solo se cumple una condición ... y en caso de que se puedan satisfacer múltiples condiciones ...

puede pensar en el if y if else como un par, que satisface two actions para one given condition .
Ej: if llueve, llévate un paraguas else ve sin paraguas.
hay dos acciones

  • ve con un paraguas
  • ir sin paraguas

y ambas acciones están vinculadas a una condición, is it raining? ie , ¿ is it raining?

ahora, considere un escenario donde hay múltiples condiciones y acciones, unidas entre sí.
Por ejemplo, if tiene hambre and no está en quiebra, disfrute de su comida en kfc, else if tiene hambre but está en bancarrota, intente llegar a un acuerdo, de lo else if , else if no tiene hambre, pero solo quiere pasar el rato en un café, intente startbucks, else no, haz cualquier cosa, simplemente no me preguntes sobre el hambre o la comida. Tengo cosas más grandes para preocuparme.
la instrucción else if debe encadenar todas las acciones que caen entre las condiciones if y else .

Lo if dice el if :

Ya sea que sea verdad o no, siempre revise otras condiciones también.

Qué else if dice else if :

Solo verifica otras condiciones si no fui cierto.