【C#】学习笔记(4) 值类型和引用类型相关(Null相关)
Reference and Value Types
Value Types(值类型):
struct(结构体)
独立的实例或者是拷贝
值的改变不会影响其它拷贝
值就是它所代表的信息
没有引用,所以不可空(null)
不需要验空(null)
Reference(引用类型):
class(类类型)
单个共享的实例
值的改变会影响到引用它的引用
引用指向信息
引用可能会指向空地址?(NullReference 也就是空指针)
需要验空
举个🌰子:
string是class,所以它是引用类型,so它可以为null。
int是struct,所以它是值类型,不可以为null。
那有没有办法可以让值类型也可以为null呢。Nullable<T>能帮助我们完成这样的需要。
来看一下栗子。
使用Nullable<T>前:
使用Nullable<T>后:
当然啦,在C#中有更加简便的写法
string.IsNullOrEmpty()
string.IsNullOrWhiteSpace()
的栗子:
判断三种情况分别输出的结果。
①为空时:
②为空字符串时:
③为空格时:
这里有个小彩蛋~✨✨