我注意到在 C # 中同时存在 字节和 再见数据类型。它们都说它们是 结构体系统。字节类型,并且表示一个8位无符号整数。
这两者之间有什么不同(如果有的话) ? 为什么你会用一个而不用另一个?
没什么区别。byte是 System 的别名。字节,就像 int是 System 的别名一样。Int32,long呼叫系统。Int64,string呼叫系统。绳子..。
byte
int
long
string
它们通常是一样的。
C # 中的 byte和 System.Byte是相同的。 byte只是一种语法糖,是 StyleCop 推荐的(用于样式指南)。
System.Byte
C # 有许多别名用于。NET 类型。byte是 Byte的别名,就像 string是 String的别名,int是 Int32的别名一样。也就是说,byte和 Byte是相同的实际类型。
Byte
String
Int32
没有,小写的那个是一个关键字,是 Byte 类型的别名。
这是纯句法糖。
byte关键字是 System.Byte数据类型的别名。
它们表示相同的数据类型,因此产生的代码是相同的:
即使不包括 System命名空间,也可以使用 byte。要使用 Byte,必须在页面顶部使用 using System;,或者指定完整的名称空间 System.Byte。
System
using System;
在一些情况下,C # 只允许您使用关键字,而不是框架类型,例如:
.
enum Fruits : byte // this works { Apple, Orange } enum Fruits : Byte // this doesn't work { Apple, Orange }
详细的其他别名,请按照 链接。
byte是 C # 中的一种内置数据类型。 System.Byte是一个结构体,表示 byte,并提供额外的方法,如 Parse和 TryParse。
Parse
TryParse
byte是 System.Byte结构的别名。与众不同。NET 语言根据特定语言的语义有不同的别名,但它们都映射到。NET 架构。
当使用反射时,
Type t=Type.GetType("System.Byte"); //works Type t=Type.GetType("System.byte"); //doesn't work, I can see no way to use"byte" directly here without converting it to "Byte"