快速掌握C#语言基础知识点(1.基础数据类型)
关注我的动态直接上代码namespace _01.基础数据类型 { internal class Program { /// summary /// 打印c#缺省类型的最大值、最小值和占用空间大小字节 /// /summary /// param nameargs/param static void Main(string[] args) { Showint(sizeof(int)); Showlong(sizeof(long)); Showfloat(sizeof(float)); Showdouble(sizeof(double)); Showdecimal(sizeof(decimal)); Showbool(sizeof(bool)); Showchar(sizeof(char)); Showsbyte(sizeof(sbyte)); Showshort(sizeof(short)); Showuint(sizeof(uint)); Showushort(sizeof(ushort)); Showulong(sizeof(ulong)); Showbyte(sizeof(byte)); } static void ShowT(int size) { T maxValue; T minValue; GetDefaultTypeMaxValueAndMinValueT(typeof(T), out maxValue, out minValue); PrintDefaultTypeInfo(typeof(T), maxValue, minValue, size); } static void PrintDefaultTypeInfoT(Type type, T maxValue, T minValue, int size) { Console.WriteLine($类型:{type.FullName}最大值{maxValue}; 最小值{minValue};大小{size}); } //求默认类型的最大值和最小值 static void GetDefaultTypeMaxValueAndMinValueT(Type type, out T maxValue, out T minValue) { maxValue default(T); minValue default(T); var prop type.GetField(MaxValue); if (prop ! null) { maxValue (T)prop.GetValue(null); } prop type.GetField(MinValue); if (prop ! null) { minValue (T)prop.GetValue(null); } } } } //类型: System.Int32最大值2147483647; 最小值-2147483648; 大小4 //类型:System.Int64最大值9223372036854775807; 最小值-9223372036854775808; 大小8 //类型:System.Single最大值3.4028235E38; 最小值-3.4028235E38; 大小4 //类型:System.Double最大值1.7976931348623157E308; 最小值-1.7976931348623157E308; 大小8 //类型:System.Decimal最大值79228162514264337593543950335; 最小值-79228162514264337593543950335; 大小16 //类型:System.Boolean最大值False; 最小值False; 大小1 //类型:System.Char最大值?; 最小值; 大小2 //类型:System.SByte最大值127; 最小值-128; 大小1 //类型:System.Int16最大值32767; 最小值-32768; 大小2 //类型:System.UInt32最大值4294967295; 最小值0; 大小4 //类型:System.UInt16最大值65535; 最小值0; 大小2 //类型:System.UInt64最大值18446744073709551615; 最小值0; 大小8 //类型:System.Byte最大值255; 最小值0; 大小1