C# 我是否可以检查用户是否响应,然后将布尔值更新为true?
我想创建一段代码,如果用户通过Console.ReadLine进行响应,则将布尔变量设置为true。此变量稍后将在其他一些代码中使用。到目前为止,我唯一尝试过的代码是:C# 我是否可以检查用户是否响应,然后将布尔值更新为true?,c#,console,boolean,user-input,readline,C#,Console,Boolean,User Input,Readline,我想创建一段代码,如果用户通过Console.ReadLine进行响应,则将布尔变量设置为true。此变量稍后将在其他一些代码中使用。到目前为止,我唯一尝试过的代码是: bool hastyped = false; var input = Console.ReadLine(); hastyped = true; 我怎样才能做到这一点 作为参考,我使用的实际代码更像: response = Console.ReadLine(); hastyped = true; 也就是说,在初始化变量之后
bool hastyped = false;
var input = Console.ReadLine();
hastyped = true;
我怎样才能做到这一点
作为参考,我使用的实际代码更像:
response = Console.ReadLine();
hastyped = true;
也就是说,在初始化变量之后。查看用户是否实际输入了一些内容,您可以检查保存输入的字符串
因为当您按Enter键时,
Console.ReadLine
是一个空字符串。因此,您可以检查输入是否包含任何字符
或者您甚至可以使用,来检查输入是否也只包含空格
示例:
//从控制台获取输入
字符串输入=Console.ReadLine();
//检查输入是否包含多个空格且不为空或null,
//如果不是布尔是真的,否则就是假的
bool hastypted=!string.IsNullOrWhiteSpace(输入);
您尝试过类似的方法吗?基本上,它检查值是否为null,如果不是,则将其更改为true
bool hastyped = false;
var input = Console.ReadLine();
if (input != null)
{
hastyped = true;
}
或者您也可以使用这种方式,您可以从microsoft文档中找到有关它的更多信息
bool hastyped = false;
var input = Console.ReadLine();
if (!string.IsNullOrEmpty(input))
{
hastyped = true;
}
如果用户只键入enter键而不键入任何其他键?你认为这是一个有效的回应吗?或者如果用户只是键入一系列空格?
Console.ReadLine()
只有在用户按下(至少)enter键时才会返回。一行代码:bool hastypted=!string.IsNullOrEmpty(输入);