質問: 掲題の件、string[]の配列が返ってくる認識ですが、 string[]自体がnull、またはstring[n]の値がnullで返ってくることは、 ありますか? 関数仕様を知りたいです。 よろしくお願い致します。
回答: 直接の回答はkunifさんが書かれている通りです。 しかし、.NET Frameworkクラスライブラリでは、そもそものライブラリ設計として、不正な値を返すことはせず、例外を投げるようにしています。そのため`String.Split`に限らずクラスライブラリ全体として、戻り値が`null`となっている可能性や配列内に`null`が混ざっている可能性は設計としてありません。 この点をもう一歩進めて、現在プレビュー版のC# 8.0では`null`が生成されない・`null`が返されないことを前提とした**null許容参照型**が導入されます。この機能を有効化した場合、型は次のように表現されます。 * `string[]` 配列自体は`null`になり得ないし、各要素も`null`になり得ない * `string[]?` 配列自体は`null`になり得るが、各要素は`null`になり得ない * `string?[]` 配列自体は`null`になり得ないが、各要素は`null`になり得る * `string?[]?` 配列自体は`null`になり得るし、各要素も`null`になり得る もちろん`String.Split`の戻り値は `string[]` です。