Aceptar la entrada del usuario
Sugerencia
Consulte la pestaña Texto e imágenes para obtener más detalles.
Los programas se vuelven verdaderamente eficaces cuando pueden interactuar con las personas que las usan. El método de Console.ReadLine() C#permite pausar el programa, esperar a que el usuario escriba algo y capturar esa información.
Uso de Console.ReadLine()
Piensa en el método Console.ReadLine() como si fuera una pregunta. Cuando el programa llega a esta línea, espera hasta que el usuario escriba su respuesta y presione la tecla Entrar antes de continuar.
Para guardar la respuesta del usuario, debe "detectarla" mediante una variable:
string favoriteColor = Console.ReadLine();
Console.WriteLine("Oh, I love " + favoriteColor + " too!");
En este código, favoriteColor es una variable (un contenedor que contiene un valor). Al ejecutar este programa, espera la entrada. Si el usuario escribe Orange y presiona Entrar, la salida es:
Orange
Oh, I love Orange too!
Puede intentar ejecutar este código usted mismo en el Editor de código de C#.
Agregar un espacio al final del mensaje
Para que la entrada del usuario sea más legible, combine Console.Write() con Console.ReadLine():
Console.Write("What is your favorite color? ");
string favoriteColor = Console.ReadLine();
Console.WriteLine("Oh, I love " + favoriteColor + " too!");
Fíjese en el espacio al final del indicador: "What is your favorite color? ". Sin ella, la entrada del usuario tendría un aspecto pegado al texto: What is your favorite color?Orange. Agregar un espacio hace que sea más claro.
Descripción de los tipos de datos
Cada valor de C# tiene un tipo de datos, que indica al equipo qué tipo de valor es. Algunos tipos de datos comunes son:
-
Cadena (
string): Texto entre comillas, como"Blue"o"25". Incluso un número se convierte en texto cuando está entre comillas. -
Entero (
int): un número entero sin comillas, como25o100. Puede hacer matemáticas con estos.
¿Por qué es importante? C# trata estos tipos de forma diferente. Puede sumar números (25 + 1 es igual a 26), pero no puede sumar directamente un número a una cadena de texto sin un tratamiento especial.
Console.ReadLine() siempre devuelve una cadena
Una regla esencial que debe recordar es que Console.ReadLine()siempre devuelve texto (una cadena), incluso si el usuario escribe un número. Por ejemplo:
string age = Console.ReadLine();
Console.WriteLine(age + 1); // This causes an error!
Si ejecuta este código y escribe 25, el programa no imprimirá 26. En su lugar, intenta agregar 1 al texto "25", que C# no permite. ¡Este es un error común para principiantes!
Para hacer matemáticas con la entrada del usuario, tendría que convertir el texto en un número primero, pero lo trataremos más adelante. Por ahora, recuerde: cualquiera que sea el tipo de usuario siempre se trata como texto.