繁体   English   中英

输入类型C#

[英]Type of input C#

实际上我正在尝试编写一个小程序来读取用户的输入,以决定它是否为integer

object x=Console.ReadLine();
check(x);

static void  check(object x)
{   
     if (x.GetType() == typeof(int))
      Console.WriteLine("int");
     else
      Console.WriteLine("not int");   

}

你可以用这个:

string x = Console.ReadLine();

int i;

if(int.TryParse(x, out i))
     Console.WriteLine("int");
 else
     Console.WriteLine("not int");   

如果TryParse()返回true ,则解析的值存储在i

只需使用Int.TryParse,如本例所示

int result;
string x = Console.ReadLine();
if(int.TryParse(x, out result))
  Console.WriteLine("int");
else
  Console.WriteLine("not int");   

该方法接受输入字符串和整数变量。 如果字符串可以转换为整数,则使用转换后的字符串初始化整数变量,该方法返回true。 否则,该方法返回false,传递的整数变量将设置为零。

作为旁注。 Console.ReadLine返回一个字符串

尝试

static void  check()
{   int result
    string x = Console.ReadLine();
    if(int.TryParse(x, out result)
      Console.WriteLine("int");
    else
      Console.WriteLine("not int");   

}

尝试这个

int isInteger;
Console.WriteLine("Input Characters: ");
string x = Console.ReadLine();
if(int.TryParse(x, out isInteger)
  Console.WriteLine("int");
else
  Console.WriteLine("not int"); 

Console.ReadLine()将始终返回字符串。 所以你可以尝试Int.TryParse()来检查类型。 检查以下示例

   int output;
   string x = Console.ReadLine();
   if(int.TryParse(x, out output)
       Console.WriteLine("int");
   else
      Console.WriteLine("not int"); 

希望这可能对你有所帮助。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM