Reputation: 11
How can I input "English" as a default language, if the user doesn't input their preferred language? Without using if/else statement.
Here is my simple code:
using System;
namespace Practice1._3
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("What's your name:");
string name = Console.ReadLine();
Console.WriteLine("Age:");
string Age = Console.ReadLine();
Console.WriteLine("Preferred language:");
string language = Console.ReadLine();
Console.WriteLine("\n-----------------------------------------");
Console.WriteLine("Your name is " + name);
Console.WriteLine("Your age is " + Age);
Console.WriteLine("Your language is " + language);
}
}
}
Upvotes: 0
Views: 105
Reputation: 3
Because of this line string language = Console.ReadLine();
, it cannot be possible to do it without checking what is already stored in the variable. I was thinking of a default value. Even if you set a default value, this line will override it with an empty string. Check here for more about string vs null
Like A. Petit suggests above, I also suggest an if statement to check the input and display your language accordingly. You can use ternary for this. a ternary Is also a form of the if statement.
Console.WriteLine("What's your name:");
string name = Console.ReadLine();
Console.WriteLine("Age:");
string Age = Console.ReadLine();
Console.WriteLine("Preferred language:");
string language = Console.ReadLine();
//check if language is entered. If not, use a default langage, else, use the entered language
language = language=="" || language == null? "English": language;
Console.WriteLine("\n-----------------------------------------");
Console.WriteLine("Your name is " + name);
Console.WriteLine("Your age is " + Age);
Console.WriteLine("Your language is " + language);
Upvotes: 0
Reputation: 158
You could use a ternary conditional operator.
Console.WriteLine("Your language is : {0}", language == "" ? "English" : language);
Upvotes: 2