Cal*_*leb -2 c# readline while-loop
以下是我的代码.当我点击5时,我必须按Enter键5次才能让程序写入该行,而按6则根本不起作用.任何解决方案将不胜感激.
Boolean keepRunning = true;
while (keepRunning = true)
{
if (Console.ReadLine() == "1")
{
Console.WriteLine("Still running");
}
else if (Console.ReadLine() == "2")
{
Console.WriteLine("Still running2");
}
else if (Console.ReadLine() == "3")
{
Console.WriteLine("Still running3");
}
else if (Console.ReadLine() == "4")
{
Console.WriteLine("Still running4");
}
else if (Console.ReadLine() == "5")
{
Console.WriteLine("Still running5");
}
else if (Console.ReadLine() == "6")
{
keepRunning = false;
}
}
Run Code Online (Sandbox Code Playgroud)
你正在等待每个人的进入Console.ReadLine();.只读一次输入,然后决定做什么.
你应该改变你的状态keepRunning == true.使用您当前的版本,您可以设置keepRunning为true您的状态,这就是"6"似乎不起作用的原因;)
Boolean keepRunning = true;
while (keepRunning == true)
{
string input = Console.ReadLine();
if (input == "1")
{
Console.WriteLine("Still running");
}
else if (input == "2")
{
Console.WriteLine("Still running2");
}
else if (input == "3")
{
Console.WriteLine("Still running3");
}
else if (input == "4")
{
Console.WriteLine("Still running4");
}
else if (input == "5")
{
Console.WriteLine("Still running5");
}
else if (input == "6")
{
keepRunning = false;
}
}
Run Code Online (Sandbox Code Playgroud)
您可以使用switch语句使其更好.
switch(input)
{
case "1":
Console.WriteLine("Still running");
break;
case "2":
Console.WriteLine("Still running");
break;
case "3":
Console.WriteLine("Still running");
break;
case "4":
Console.WriteLine("Still running");
break;
case "5":
Console.WriteLine("Still running");
break;
case "6":
keepRunning = false;
break;
default:
break;
}
Run Code Online (Sandbox Code Playgroud)