índice de Visual Basic 2005
 

Novedades VB 2005
Características del lenguaje

 

Autor: Guillermo 'guille' Som
Actualizado: 03/Jul/2004

Novedades de Visual Basic 2005:


ir arriba del documento Instrucción Continue

Esta instrucción nos servirá para indicar que un bucle continúe con la siguiente iteración.
Es decir, si estamos dentro de un bucle For y queremos que continúe con el siguiente valor (como si lo mandásemos al Next), podemos usar la instrucción Continue.

Esta instrucción se pude usar en los bucles: Do / Loop, While / End While y For / Next y la forma de usarla sería indicando esta palabra y el tipo de bucle que debe continuar, por ejemplo:
Continue For
Continue Do
Continue While

La instrucción "opuesta" a Continue <bucle>, sería Exit <bucle> ya que permite salir de (o abandonar) un bucle.


Ejemplos:

1. Continue For

Dim j As Integer = 0
Console.WriteLine("Este bucle no mostrará el valor de j = 5")
For i As Integer = 1 To 10
   j += 1
   If j = 5 Then Continue For
   ' Cuando j valga 5, no se ejecutará esta línea
   Console.WriteLine("i= {0}, j= {1}", i, j)
Next
 

2. Continue Do

Console.WriteLine("Este bucle no mostrará el valor de i = 5")
Dim i As Integer = 0
Do
   i += 1
   If i = 5 Then Continue Do
   ' Esta línea no se mostrará cuando i valga 5
   Console.WriteLine("i= {0}", i)
Loop While i < 10
 

3. Continue While

Console.WriteLine("Este bucle no mostrará el valor de i = 5")
Dim i As Integer = 0
While i < 10
   i += 1
   If i = 5 Then Continue While
   ' Esta línea no se mostrará cuando i valga 5
   Console.WriteLine("i= {0}", i)
End While
 

ir arriba del documento Indicar expresamente el índice inferior de un array con 0 To

Como seguramente sabrás los arrays en .NET Framework siempre deben tener un índice inferior 0, es decir, todos los arrays de punto .NET siempre empiezan por el elemento cero.
Al declarar un array con Visual Basic, por ejemplo con:
Dim a(10) As String
lo que hacemos es crear un array de 11 elementos, que van desde cero hasta 10 (ambos inclusives).
Sin embargo, en C# cuando se indica un valor al declarar un array lo que se indica es el número de elementos que tendrá, por ejemplo:
string[] a = new string[10]
declara un array con 10 elementos, de cero a 9.
Pues bien, para que quede claro este hecho, con Visual Basic 2005 podemos usar la palabra clave To, de forma que la declaración anterior quede de la siguiente forma:
Dim a(0 To 10) As String
cualquiera que vea esta declaración (incluso los programadores de VB) sabrán que el array tiene 11 elementos: desde el cero hasta el 10.

Por tanto, no te alegres tanto al ver que "reaparece" la instrucción To para los arrays, ya que en VB .NET no se puede usar como lo hacemos en las versiones clásicas de VB, en las que podemos indicar tanto el índice inferior como el superior, (incluso con valores negativos), de forma que si hacemos esto:
Dim a(3 To 10) As String
tendremos un array de 8 elementos cuyos índices van desde 3 hasta 10.

Como curiosidad te diré que el propio .NET Framework no limita el índice inferior de los arrays, o eso parece ya que la clase Array tiene un método (GetLowerBound) para saber cual el índice inferior de un array; pero las especificaciones del CLS si que lo hace y por eso todos los lenguajes de .NET siempre usarán el cero como índice inferior de los arrays.

La instrucción To también podemos usarla con ReDim:
ReDim a(0 To 5)
y podemos aplicarlo a cualquier array, se haya declarado de la forma que se haya declarado:

Dim b As Integer()
ReDim b(0 To 4)

Dim c() As Long
ReDim c(0 To 7)

Por supuesto también podemos usar To con arrays multidimensionales:

Dim m(0 To 11, 0 To 30) As Integer

Incluso declaraciones mixtas:

Dim n(11, 0 To 30) As Integer


Resumiendo:


Podemos usar 0 To para indicar de forma expresa que el índice inferior de un array es cero.
Pero siempre el valor que se utilice delante de To debe ser cero, es como si la instrucción realmente fuera 0 To.

.


ir arriba del documento Operador IsNot

Cuando queremos comprobar si el objeto al que apunta una variable es el mismo al que otra variable apunta, se suele utilizar el operador Is.

Por ejemplo, suponiendo que tanto la variable o1 y la variable o2 apuntan al mismo objeto creado en la memoria, podemos usar el siguiente código:
If o1 Is o2 Then
En este caso esta expresión devolverá un valor verdadero, ya que las dos variables hacen referencia al mismo objeto.

Pero si lo que queremos hacer es una comprobación de que los objetos contenidos en las dos variables sean diferentes, entonces haríamos algo así:
If Not o1 Is o2 Then
De forma que la condición se cumpla cuando las dos variables no apunten al mismo objeto.

Pues bien, aunque no te lo creas, esta última comparación se suele usar con frecuencia, sobre todo cuando queremos comprobar que el contenido no sea Nothing (nulo):
If Not o1 Is Nothing Then
Y en Visual Basic 2005 (.NET 2.0) se ha añadido el operador IsNot para que este tipo de comparaciones sea algo más "claro", ya que en lugar de usar dos operadores (Is y Not), solo será necesario usar uno: IsNot, de forma que esta última comparación quedaría de la siguiente forma:
If o1 IsNot Nothing Then

Por supuesto que en algunos casos tampoco habría que abusar de tanta "negación", ya que, en este último caso, puede que resulte más fácil de leer si usamos Is:
If o1 Is Nothing Then
   ' Lo que hay que hacer cuando sea Nothing...
Else
   ' Lo que haya que hacer cuando no sea Nothing...
End If

Pero esto, como siempre, queda a nuestra entera elección, lo importante es que ahora tenemos otra forma más de comprobar si dos variables apuntan o no al mismo objeto.

.


ir arriba del documento ...

 

 


índice de Visual Basic 2005 índice de Visual Studio 2005 y .NET Framework 2.0 índice de C# 2005

ir arriba del documento

la Luna del Guille o... el Guille que está en la Luna... tanto monta...