2014-09-04 35 views
-2

我記得自己有一種方法可以在C#中打印出數據類型範圍。將數據類型範圍打印到C#控制檯

我認爲這將是int intSize = sizeof(int);,但它只打印出「4字節」。我倒是想打印出的範圍內的數量,從最低-2,147,483,648到2,147,483,647

希望你能幫助我記得自己

回答

0

使用int.MinValue和int.MaxValue。

+0

是的!就是這樣。謝謝,忘了這麼簡單的事情... – barbareos12 2014-09-04 18:05:03

0

你需要int.MinValueint.MaxValue

Console.WriteLine("{0} to {1}", int.MinValue, int.MaxValue); 

您可以創建這樣一個通用的方法:(沒有錯誤檢查和無約束)

class ValueRange<T> 
{ 
    public static string GetRange() 
    { 
     FieldInfo maxValueField = typeof(T).GetField("MaxValue", BindingFlags.Public | BindingFlags.Static); 
     FieldInfo minValueField = typeof(T).GetField("MinValue", BindingFlags.Public | BindingFlags.Static); 
     return string.Format("{0} to {1}", minValueField.GetValue(null), maxValueField.GetValue(null)); 
    } 
} 

,然後調用它像:

string str = ValueRange<int>.GetRange(); 

You w生病得到:str = "-2147483648 to 2147483647"

對於double

string str = ValueRange<double>.GetRange(); 

,你會得到:str = "-1.79769313486232E+308 to 1.79769313486232E+308"