40

如何检查字符串是否可转换int?

假设我们有像“House”、“50”、“Dog”、“45.99”这样的数据,我想知道我应该只使用字符串还是使用解析后的int值。

在 JavaScript 中,我们有这个parseInt()函数。如果无法解析字符串,它将返回NaN

4

4 回答 4

77

Int32.TryParse(String, Int32)- http://msdn.microsoft.com/en-us/library/f02979c7.aspx

  bool result = Int32.TryParse(value, out number);
  if (result)
  {
     Console.WriteLine("Converted '{0}' to {1}.", value, number);         
  }
于 2009-01-01T23:00:08.077 回答
13

通过将 tryparse 直接运行到 if 中,你能不能让它更优雅一点?

像这样:

if (Int32.TryParse(value, out number))     
  Console.WriteLine("Converted '{0}' to {1}.", value, number);
于 2009-01-02T03:10:15.997 回答
5

Int.TryParse

于 2009-01-01T23:00:20.010 回答
2

在其中一个搜索结果中发现了这一点:如何识别字符串是否为数字?

添加这个是因为我之前看到的答案没有使用:

int n;
bool isNumeric = int.TryParse("123", out n);

这里"123"可以是s = "123"OP 正在测试的字符串,如果发现它是数字,则在调用后该值n将具有一个值 ( )。123

于 2017-04-03T08:54:08.503 回答