为什么这段代码返回true:
new Byte() == new Byte() // returns true
但是下面的代码返回false:
new Byte[0] == new Byte[0] // returns false
发布于 2014-01-15 03:30:27
因为new Byte()
创建了值类型,它们是通过值进行比较的(默认情况下,它将返回值为0
的byte
)。new Byte[0]
创建数组,这是一个引用类型,并通过引用进行比较(并且这两个数组实例将具有不同的引用)。
有关详细信息,请参阅Value Types and Reference Types文章。
https://stackoverflow.com/questions/21122269
复制相似问题