En Visual Basic .Net hemos visto que cuando queremos almacenar un valor entero definimos una variable de tipo Ingeger, si queremos almacenar un valor con decimales definimos una variable de tipo Single. Ahora si queremos almacenar una cadena de caracteres (por ejemplo un nombre de una persona) debemos definir una variable de tipo String.
Más adelante veremos en profundidad y detenimiento los conceptos del manejo de String, por ahora solo nos interesa la mecánica para trabajar con cadenas de caracteres.
Solicitar el ingreso del nombre y edad de dos personas. Mostrar el nombre de la persona con mayor edad.
Module Module1 Sub Main() Dim nombre1, nombre2 As String Dim edad1, edad2 As Integer Console.Write("Ingrese el nombre:") nombre1 = Console.ReadLine() Console.Write("Ingrese edad:") edad1 = Console.ReadLine() Console.Write("Ingrese el nombre:") nombre2 = Console.ReadLine() Console.Write("Ingrese edad:") edad2 = Console.ReadLine() Console.Write("La persona de mayor edad es:") If edad1 = edad2 Then Console.Write("Tienen la misma edad") Else If (edad1 > edad2) Then Console.Write(nombre1) Else Console.Write(nombre2) End If End If Console.ReadKey() End Sub End Module
Para almacenar un nombre debemos definir una variable de tipo String y su ingreso por teclado se hace llamando al método ReadLine del objeto Console:
nombre1 = Console.ReadLine()
Solicitar el ingreso de dos nombres de personas. Mostrar un mensaje si son iguales o distintos.
Module Module1 Sub Main() Dim nombre1, nombre2 As String Console.Write("Ingrese primer nombre:") nombre1 = Console.ReadLine() Console.Write("Ingrese segundo segundo:") nombre2 = Console.ReadLine() If nombre1 = nombre2 Then Console.Write("Los nombres son iguales") Else Console.Write("Los nombres son distintos") End If Console.ReadKey() End Sub End Module
Para comparar si el contenido de dos String son iguales se utiliza el operador = como si se estuvieran comparando dos enteros.
La condición se verifica verdadero si los contenidos de los dos String son exactamente iguales, es decir si cargamos "Martinez" en nombre1 y "martinez" en nombre2 luego retorna falso ya que no es lo mismo la "M" mayúscula y la "m" minúscula.
En el caso que necesitemos considerar igual caracteres mayúsculas y minúsculas veremos más adelante como resolverlo
También funcionan los otros operadores relacionales con el manejo de cadenas de caracteres:
> (mayor) (el primer String es mayor alfabéticamente que el segundo) < (menor) >= (mayor o igual) <= (menor o igual) = (igual) <> (distinto)