Las instrucciones son acciones que realiza el programa. Existen
acciones comunes como la declaración de variables, la asignación de valores, la
llamada a métodos, el recorrido en bucle de una colección y la creación de
bifurcaciones a uno u otro bloque de código en función de una condición. El
orden en que se ejecutan las instrucciones en un programa se denomina flujo de
control o flujo de ejecución.
Para C#, una instrucción puede estar compuesta por una única
línea de código que finaliza en un punto y coma o por una serie de
instrucciones de una línea incluidas en un bloque. Como ya hemos visto, un bloque de
instrucciones se encierra entre llaves {} y pueden contener bloques anidados. A
continuación enumero las categorías:
- Instrucciones de selección (if, else, switch, case)
- Instrucciones de iteración (do, for, foreach, in, while)
- Instrucciones de salto (break, continue, default, goto, return, yield)
- Instrucciones de control de excepciones (throw, try-catch, try-finally, try-catch-finally)
- Checked y unchecked (checked, unchecked)
- Instrucción fixed (fixed)
- Instrucción lock
En VB.NET
En Visual Basic, una instrucción es una instrucción
completa. Puede contener palabras clave,
operadores, variables, constantes y expresiones y cada instrucción como en C#, pertenece
a cada una de las categorías siguientes:
Instrucciones de declaración, que dan nombre a una variable,
constante o procedimiento y también pueden especificar un tipo de datos.
Instrucciones ejecutables, que inician acciones. Estas instrucciones pueden llamar a un método
o función, y pueden repetirse en bloques de código o crear una bifurcación en
otro bloque de código. Las instrucciones ejecutables incluyen instrucciones de
asignación, que asignan un valor o expresión a una variable o constante.
En este capítulo, vamos a ver las instrucciones de selección
para C# y las instrucciones ejecutables para VB.NET.
¿Empezamos por C#? Venga, pues una instrucción de selección,
hace que el programa vaya a un determinado punto dependiendo de que cierta
condición sea verdadero o falso (true o false). Las palabras if, else, switch, case y default son las
palabras clave en las instrucciones de selección. Como son palabras clave, no
pueden usarse como variables o nombres de métodos ya que el compilador nos
daría un error.
La instrucción if
identifica que sentencia debe ejecutarse dependiendo de un valor booleano
(verdadero o falso, true o false), vemos un ejemplo:
bool
condition = true;
if (condition)
{
Console.WriteLine("La variable tiene un valor true");
}
else
{
Console.WriteLine("La variable tiene un valor false.");
}
Analicemos el código. Si la variable es true, (verdadera),
visualizaremos en pantalla el texto de “La variable tiene un valor true”, pero
si el valor lo cambiáramos a false, veríamos el segundo mensaje “La variable
tiene un valor false”. El contenido donde se dirigirá el flujo del programa, se
encuentra encerrado entre llaves {}, a continuación tenemos la palabra clave else y otras dos llaves con el contenido
donde se redirigirá el programa cuando la condición es false.
En el siguiente ejemplo, declaramos una variable con valor entero
y le asignamos el valor 8 y en la instrucción comparamos ese valor m para ver
si es mayor que 10, ¿es mayor 8 que 10 (entre paréntesis)? Yo creo que no, pues
entonces se aparecerá el mensaje “La variable tiene un valor false”.
int m = 8;
if (m > 10)
{
Console.WriteLine("La variable tiene un valor true");
}
else
{
Console.WriteLine("La variable tiene un valor false.");
}
También podríamos comparar
si un texto es igual a otro mediante el operador ==
string texto = “mi_texto”;
if (texto == “mi_texto”)
{
Console.WriteLine("La variable tiene un valor true");
}
También existe una
combinación de if else y es que además podemos hacer una comparativa if y si falla
esta, podemos hacer de nuevo otra comparación else if y si fallaran todas las
instrucciones else if, redirigir el programa a la instrucción else.
int m = 8;
if (m > 10)
{
Console.WriteLine("La variable tiene un valor true");
}
else if (m == 8)
{
Console.WriteLine("La variable tiene un valor igual a 8");
}
else
{
Console.WriteLine("La variable tiene un valor false.");
}
La instrucción if tiene
una forma simplificada como la que os represento
if (m > 10) {Console.WriteLine("La variable tiene un valor true");}
else {Console.WriteLine("La variable tiene un valor false.");}
(Esta versión es igual
que las anteriores, pero con las llaves en la misma línea)
o
if (m > 10) Console.WriteLine("La variable tiene un valor true");
else Console.WriteLine("La variable
tiene un valor false.");
Consejo: cuando no sepáis
como funciona una instrucción, acudid a la referencia de msdn,
ahí tenéis todo
Otra instrucción de
selección es switch en
la que se redirige el programa a la lista de candidatos, en el siguiente caso,
como es igual a 1, se redirigirá a la zona donde se imprimirá en pantalla “Caso
1”. Si por ejemplo el valor de la variable tuviera un valor de 17, como no
existe ningún caso que valga 17, se ejecutaría la instrucción Default.
La palabra clave break,
hace que una vez ejecutado el caso concreto, el programa se redirija fuera de
la instrucción y no ejecute nada más dentro de esta.
int
casoSwitch = 1;
switch
(casoSwitch)
{
case 1:
Console.WriteLine("Caso
1");
break;
case 2:
Console.WriteLine("Caso
2");
break;
default:
Console.WriteLine("Caso Default");
break;
}
En el lenguaje “der Waki”.
¿Existe algún caso que sea igual a 2? Pués claro!! Ir hasta el caso 2 e
imprimir en pantalla “Caso 2”.
Otro caso, sería poder
agrupar casos. En este concreto, hemos agrupado el caso 2,3 y 8, de modo que si
la variable vale alguno de ellos, aparecerá el texto “Caso 2, 3 u 8”
int
casoSwitch = 3;
switch
(casoSwitch)
{
case 1:
Console.WriteLine("Caso
1");
break;
case 2:
case 3:
case 8:
Console.WriteLine("Caso 2, 3
u 8");
break;
default:
Console.WriteLine("Caso Default");
break;
}
En Visual Basic .NET es muy parecido todo, pero existen
algunas variaciones, primero que no existen llaves como en C#, estas se cambian
por palabras clave, entonces para iniciar una instrucción if, esta comienza por
lo mismo If, se añade la condición (sin paréntesis), palabra clave Then (entonces en inglés), el contenido del
código que se ejecutará cuando sea verdadero, ElseIf o Else cuando queremos
efectuar nuevas comparativas o la condición es falsa respectivamente y por fin
le decimos al compilador que la instrucción finaliza con End If. ¿Bien? Prácticamente
es igual!
Dim
m As Integer =
8
If m > 10 Then
Console.WriteLine("La variable tiene un valor true")
ElseIf m = 8 Then
Console.WriteLine("La variable tiene un valor igual a 8")
Else
Console.WriteLine("La variable tiene un valor false.")
End If
Para la instrucción switch iniciamos con Select Case y expresión
Switch. Luego los casos, código del caso y salida de la instrucción Select
Case.
Dim
casoSwitch As Integer
= 3
Select
Case casoSwitch
Case 1
Console.WriteLine("Caso
1")
Exit
Select
Case 2, 3, 8
Console.WriteLine("Caso 2, 3 u
8")
Exit Select
Case Else
Console.WriteLine("Caso
Default")
Exit
Select
End Select
Igual pero con otras palabras!! Same, but with other words!!
Y si encima .NET, te permite escribir en varios lenguajes, pues que más da el que uses!! el que más fácil te resulte, ¿no?
Saludos “der
Waki”
Nota: Si utilizáis Visual Studio, escribid dentro de un método la palabra if y pulsáis la tecla TAB dos veces. OHHH!! el fragmento de código, se escribe solo!!!
Nota: Si utilizáis Visual Studio, escribid dentro de un método la palabra if y pulsáis la tecla TAB dos veces. OHHH!! el fragmento de código, se escribe solo!!!