企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
# null(C# 参考) **null** 关键字是表示不引用任何对象的 null 引用的文字值。 **null** 是引用类型变量的默认值。普通值类型不能为 null。但是,C# 2.0 引入了可以为 null 值的类型。请参见 [可以为 null 的类型(C# 编程指南)](https://msdn.microsoft.com/zh-cn/library/1t3y8s4s.aspx)。 下面的示例演示 null 关键字的一些行为: ``` class Program { class MyClass { public void MyMethod() { } } static void Main(string[] args) { // Set a breakpoint here to see that mc = null. // However, the compiler considers it "unassigned." // and generates a compiler error if you try to // use the variable. MyClass mc; // Now the variable can be used, but... mc = null; // ... a method call on a null object raises // a run-time NullReferenceException. // Uncomment the following line to see for yourself. // mc.MyMethod(); // Now mc has a value. mc = new MyClass(); // You can call its method. mc.MyMethod(); // Set mc to null again. The object it referenced // is no longer accessible and can now be garbage-collected. mc = null; // A null string is not the same as an empty string. string s = null; string t = String.Empty; // Logically the same as "" // Equals applied to any null object returns false. bool b = (t.Equals(s)); Console.WriteLine(b); // Equality operator also returns false when one // operand is null. Console.WriteLine("Empty string {0} null string", s == t ? "equals": "does not equal"); // Returns true. Console.WriteLine("null == null is {0}", null == null); // A value type cannot be null // int i = null; // Compiler error! // Use a nullable value type instead: int? i = null; // Keep the console window open in debug mode. System.Console.WriteLine("Press any key to exit."); System.Console.ReadKey(); } } ``` ## C# 语言规范 有关详细信息,请参阅 [C# 语言规范](https://msdn.microsoft.com/zh-cn/library/ms228593.aspx)。该语言规范是 C# 语法和用法的权威资料。 ## 请参阅 [C# 参考](https://msdn.microsoft.com/zh-cn/library/618ayhy6.aspx) [C# 编程指南](https://msdn.microsoft.com/zh-cn/library/67ef8sbd.aspx) [C# 关键字](https://msdn.microsoft.com/zh-cn/library/x53a06bb.aspx) [文字关键字(C# 参考)](https://msdn.microsoft.com/zh-cn/library/23954zh5.aspx) [默认值表(C# 参考)](https://msdn.microsoft.com/zh-cn/library/83fhsxwc.aspx) [Nothing (Visual Basic)](https://msdn.microsoft.com/zh-cn/library/0x9tb07z.aspx)