【发布时间】:2010-03-13 15:03:14
【问题描述】:
我熟悉:
Convert.ToInt32(texthere);
但是还有另一种更清洁的方法吗?我喜欢为同事提供可读的代码,我一直在寻找任何能让我的工作看起来更明显的东西。
【问题讨论】:
-
如果您的同事无法弄清楚 Convert.ToInt32() 的作用,他们需要寻找新的职业。
我熟悉:
Convert.ToInt32(texthere);
但是还有另一种更清洁的方法吗?我喜欢为同事提供可读的代码,我一直在寻找任何能让我的工作看起来更明显的东西。
【问题讨论】:
Convert.ToInt32 有什么不明显的地方?
Convert这个值To和Int32?
【讨论】:
您还可以使用 int、double、float 和 decimal 类型的 Parse 和 TryParse 方法。
【讨论】:
【讨论】:
Int.parse、float.parse 等等。
【讨论】:
就我个人而言,我会使用所述的标准方法(Convert.ToInt32、double.TryParse 等),但如果您想要另一种选择......
您可以添加一个扩展方法,如下所示(未测试):
public static class Extensions
{
public static int ConvertStringToInt(this string s)
{
return Convert.ToInt32(s);
}
public static long ConvertStringToLong(this string s)
{
return Convert.ToInt64(s);
}
}
然后你可以:
string test = "1234";
int testToInt = test.ConvertStringToInt();
long testToLong = test.ConvertStringToLong();
【讨论】:
ToInt,但这只是个人喜好。
ConvertStringToInt 应该返回int,它当前显示string。 ConvertStringToLong 应该返回 long 但目前也显示 string。然后在您的示例中使用两者作为返回 int 然后 double 在这种情况下将是编译器错误。