estructura de las ramas de Java - if ... else / conmutador
estructura de la secuencia sólo el orden de ejecución no puede ser juicios y elecciones, y por lo tanto requieren una estructura ramificada.
Java tiene dos estructura de las ramas:
- if
- sentencia switch
if
Si una declaración contiene una expresión booleana y uno o más estados.
gramática
Si la sentencia con la siguiente sintaxis:
if(布尔表达式) { //如果布尔表达式为true将执行的语句 }
Si la expresión booleana es verdadera, si el bloque de instrucciones de código. De lo contrario Si bloque de instrucciones detrás de la ejecución de código.
public class Test { public static void main(String args[]){ int x = 10; if( x < 20 ){ System.out.print("这是 if 语句"); } } }
El código anterior se compila resultados son los siguientes:
这是 if 语句
si ... else
Más tarde, si la declaración con else cuando la expresión lógica de la sentencia if es falsa, se ejecuta el bloque else.
gramática
if ... else se utiliza de la siguiente manera:
if(布尔表达式){ //如果布尔表达式的值为true }else{ //如果布尔表达式的值为false }
Ejemplos
public class Test { public static void main(String args[]){ int x = 30; if( x < 20 ){ System.out.print("这是 if 语句"); }else{ System.out.print("这是 else 语句"); } } }
El código anterior se compila resultados son los siguientes:
这是 else 语句
if ... else if ... else
Más tarde sentencia if con elseif ... else, esta declaración puede detectar una variedad de escenarios posibles.
Use si, de lo contrario si, else, la necesidad de prestar atención a los siguientes puntos:
- si la declaración en la mayoría de los estados una persona antes de todos los else elseif declaraciones.
- Si los estados pueden tener varios estados elseif, deben estar antes de la sentencia else.
- Una vez que una persona si se detecta declaración como verdad, otra cosa si se saltan y ejecutan else.
gramática
si ... sintaxis demás es como sigue:
if(布尔表达式 1){ //如果布尔表达式 1的值为true执行代码 }else if(布尔表达式 2){ //如果布尔表达式 2的值为true执行代码 }else if(布尔表达式 3){ //如果布尔表达式 3的值为true执行代码 }else { //如果以上布尔表达式都不为true执行代码 }
Ejemplos
public class Test { public static void main(String args[]){ int x = 30; if( x == 10 ){ System.out.print("Value of X is 10"); }else if( x == 20 ){ System.out.print("Value of X is 20"); }else if( x == 30 ){ System.out.print("Value of X is 30"); }else{ System.out.print("This is else statement"); } } }
El código anterior se compila resultados son los siguientes:
Value of X is 30
Anidado si ... Else
Anidado instrucción if-else es legítimo. Esto significa que se puede utilizar si o elseif declaración en otro caso o elseif comunicado.
gramática
Anidado si la sintaxis ... otra cosa es como sigue:
if(布尔表达式 1){ ////如果布尔表达式 1的值为true执行代码 if(布尔表达式 2){ ////如果布尔表达式 2的值为true执行代码 } }
Puede ser como la sentencia if anidada más si ... otra cosa.
Ejemplos
public class Test { public static void main(String args[]){ int x = 30; int y = 10; if( x == 30 ){ if( y == 10 ){ System.out.print("X = 30 and Y = 10"); } } } }
El código anterior se compila resultados son los siguientes:
X = 30 and Y = 10
sentencia switch
sentencia switch para determinar un valor de una variable con un rango de valores son iguales, y cada valor se llama una rama.
gramática
Sintaxis del parámetro es el siguiente:
switch(expression){ case value : //语句 break; //可选 case value : //语句 break; //可选 //你可以有任意数量的case语句 default : //可选 //语句 }
sentencia switch tiene las siguientes reglas:
- sentencia switch único tipo variable es byte, short, int o carbón.
- sentencia switch puede tener varios estados de casos. Detrás de cada caso seguida de dos puntos y el valor a ser comparado.
- caso tipo de datos declaración de valor debe ser el mismo que el tipo de datos de la variable, y sólo puede ser una constante o literal.
- Cuando el valor de una variable igual al valor de la declaración de caso, se ejecuta la instrucción después de la declaración del caso hasta que la sentencia break parecería fuera de la sentencia switch. 3
- Cuando se encuentre una sentencia break, se termina sentencia switch. El programa salta a la instrucción siguiendo la instrucción switch se ejecuta. declaración de caso no tiene que contener una sentencia break. Si no hay una ruptura aparece comunicado, el programa continuará con la siguiente declaración del caso hasta que la sentencia break.
- sentencia switch puede contener una rama por defecto que debe ser la última rama de la sentencia switch. ejecución por defecto en ninguna declaración de casos y valores de las variables de tiempo iguales. rama por defecto no es necesario romper el comunicado.
Ejemplos
public class Test { public static void main(String args[]){ //char grade = args[0].charAt(0); char grade = 'C'; switch(grade) { case 'A' : System.out.println("Excellent!"); break; case 'B' : case 'C' : System.out.println("Well done"); break; case 'D' : System.out.println("You passed"); case 'F' : System.out.println("Better try again"); break; default : System.out.println("Invalid grade"); } System.out.println("Your grade is " + grade); } }
El código anterior se compila resultados son los siguientes:
Well done Your grade is C