c# – 什么是空参考检查的好习惯?

前端之家收集整理的这篇文章主要介绍了c# – 什么是空参考检查的好习惯?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Best and fastest way to check if an object is null 6
检查对象上空引用的最有效的方法是什么?我看到各种代码样本有不同的检查方法,以下是最有效的或被认为是最佳实践的最佳实践?
Object.ReferenceEquals(item,null)

item == null

item != null

Object.Equals(item,null)

谢谢

解决方法

> Object.ReferenceEquals(item,null)比较引用,等于item == null.
> Object.Equals(item,null)比较引用类型的引用和值类型的按位,但在反射器中它等于(item == null)|| ((item!= null&& null!= null)&&item.Equals(null)).
> item!= null代码不总是等于!(item == null),但当然结果应该是相等的.
> item == null代码不等于null == item,它类似于typeof(item).Equals(object)和object.Equals(typeof(item))方法调用.

它不同,因为你可以覆盖!=,==,等于.
使用已知实现的方法,null == item更好的代码,但更难阅读.
Object.ReferenceEquals(null,item)可能会更快或更快.

附:也使用string.IsNullOrEmpty(item)

猜你在找的C#相关文章