VB.NET中声明变量时[Byte]与Byte()有什么区别?
VB.NET 两种变量声明写法的核心差异
二者存在本质区别,对应的是完全不同的变量类型,绝非仅语法写法差异:
Dim broadcastBytes As Byte()
该写法声明的是Byte类型的一维数组,属于引用类型,初始默认值为Nothing,使用前必须先指定数组长度(比如通过ReDim语句),才可以存储多个Byte数值,适合存储字节流、数据包等批量字节数据。Dim broadcastBytes As [Byte]
该写法声明的是单个Byte类型的值变量,属于值类型,初始默认值为0,可直接赋值0~255范围内的整数。
这里的方括号是VB.NET的关键字转义语法,作用是当类型名/变量名和VB保留关键字重名时避免编译报错。由于Byte本身不是VB的保留关键字,因此此处方括号可省略,写法等价于Dim broadcastBytes As Byte,仅声明单个字节变量。
简单区分:如果你需要存储多个字节的序列,必须用带括号的数组声明;如果只需要存储单个0~255的数值,用单个Byte声明即可。
内容的提问来源于stack exchange,提问作者Idan Azari
相关产品推荐
相关产品推荐

