配列を返すメソッドでは、null
/Nothing
よりも空の配列を返したほうがよい場合があります。 配列を返すメソッドがnullを返す場合、呼び出し側は戻り値がnullかどうかの判定を行った上で列挙などの操作を行う必要がありますが、空の配列を返すようにすれば呼び出し側はnull判定を行わずに戻り値の配列に操作を行うことができます。
上記の例では、ファイルが無かった場合にもnullや空の配列を返すようにすることもできますが、推奨できません。 例えば、上記のメソッドにエラー処理を追加してファイルの内容が異常だった場合にもnullを返すような実装にした場合、メソッドの呼び出し側は戻り値がnullとなった原因が何なのかを知ることができません。
このため、なんらかのエラーがあった場合には、nullや空の配列を返すよりも、ファイルが無かった場合はFileNotFoundException、ファイルの内容やフォーマットが異常だった場合はInvalidDataExceptionをスローするというように、状況にあった例外をスローして呼び出し側に原因を通知すべきです。