一、给成员变量赋null值:
1. 引用类型可以直接赋值null
例:
string str1 = null;
2.值类型不能直接赋值null类型
二、给值类型赋值
方式一:
Nullable<int> intNumber = null;
方式二:
int? intNumber1 = null;
三、null和字符串空值和字符串空格的区别:
- null是没有创建内存空间
- 字符串空值 "" 或者string.Empty 实际上都会分配空间
- 字符串空格 " " 会分配空间,空格在ACSII中有对应的符号
四、IsInterned 用来判断字符是否已经在内存中存在
string str = "123";
string.IsInterned(str);
Console.WriteLine(string.IsInterned(str));
五、双问号 ??(合并运算符):用于判断一个变量在为 null 的时候返回一个指定的值
//如果intNumner2为null 那么取默认值10
//反之取intNumner12的值5,后面就不取10
例: int intNumber1;
int? intNumber2 = 5;
intNumber1 = intNumber2 ?? 10;