C#中字节与字节数据类型的区别

jay*_*won 147 c# byte

我注意到在C#中有字节字节数据类型.他们都说它们是struct System.Byte类型,代表一个8位无符号整数.

所以我很好奇两者之间有什么不同,以及为什么你会使用另一个.

谢谢!

Guf*_*ffa 146

byte关键字与一个别名System.Byte的数据类型.

它们代表相同的数据类型,因此生成的代码是相同的.使用中只有一些差异:

  • byte即使System未包含命名空间,也可以使用.要使用,Byte您必须using System;在页面顶部有一个,或指定完整的命名空间System.Byte.

  • 在某些情况下,C#只允许您使用关键字,而不是框架类型,例如:

.

enum Fruits : byte // this works
{
  Apple, Orange
}

enum Fruits : Byte // this doesn't work
{
  Apple, Orange
}
Run Code Online (Sandbox Code Playgroud)


Ada*_*ras 25

byteSystem.Byte在C#是相同的.byte只是语法糖,并由StyleCop推荐(用于风格指南).

  • 事实上,byte被称为System.Byte的别名 (2认同)

Dar*_*rov 8

没有不同.byte是System.Byte的别名,同样int是System.Int32,longSystem.Int64,stringSystem.String,...的别名.


Bri*_*sen 6

C#有许多.NET类型的别名.byte是一个别名Byte,就像string是一个别名String,并int为一个别名Int32.即,byte并且Byte是相同的实际类型.


Ger*_*nck 6

没什么,小写的是关键字,它是字节类型的别名.

这是纯粹的语法糖.