可空类型

可空类型(Nullable types)是在一些编程语言中允许出现NULL值的数据类型,用于表示缺失值()或无效值,如函数执行失败的返回值,或SQLNULL。静态类型语言中,可空类型是可选类型。动态类型语言(即值有类型,但变量没有类型)中等价于单个空值。

原始类型整型布尔类型不能有空值,但有对应的可空类型(可空整型或可空布尔类型)。

语言支持

支持可空类型的编程语言:

支持原生空值的静态类型语言:

使用库支持空值的静态类型语言:

支持空值的动态类型语言:

  • Perl的标量类型的缺省值为undef,也可赋值为undef
  • PHP有NULL类型和is_null()方法,从版本7.1开始有原生的可空类型[11]
  • PythonNone[12]
  • Julianothing值(属于类型Nothing)和Union{T, Nothing}类型[13]
  • Ruby有nil值和NilClass类型
  • JavaScriptnull

参见

参考文献

  1. . [2022-03-02]. (原始内容存档于2019-01-06).
  2. BillWagner. . docs.microsoft.com. [2021-10-05]. (原始内容存档于2022-05-24) (美国英语).
  3. . Msdn.microsoft.com. [2013-08-19]. (原始内容存档于2016-10-17).
  4. . [2022-03-02]. (原始内容存档于2022-05-28).
  5. . [2022-03-02]. (原始内容存档于2022-02-13).
  6. . [2022-03-02]. (原始内容存档于2021-07-23).
  7. . www.php.net. [2021-10-05]. (原始内容存档于2022-06-05).
  8. . Nullabletypes.sourceforge.net. [2013-08-19]. (原始内容存档于2019-09-04).
  9. . Nullabletypes.sourceforge.net. [2013-08-19]. (原始内容存档于2016-03-03).
  10. KathleenDollard. . docs.microsoft.com. [2021-10-05]. (原始内容存档于2022-04-11) (美国英语).
  11. . [2022-03-02]. (原始内容存档于2022-05-31).
  12. . [2022-03-02]. (原始内容存档于2022-06-06).
  13. . [2022-03-02]. (原始内容存档于2022-03-24).
This article is issued from Wikipedia. The text is licensed under Creative Commons - Attribution - Sharealike. Additional terms may apply for the media files.