これは非常にばかげて聞こえるかもしれません。しかし、私が新しいapiを作成し始めるたびに、私はこの質問に固執しています。入力が間違った場合の戻り値
私は、入力を取り込み、データベースまたはファイルに書き込み、ブール変数のtrue/falseを返す作者を書いています。
ライターがtrueを返した場合、書き込みが成功したことを意味します。 ライターがfalseを返した場合、書き込みが失敗したことを意味します。
入力がnullまたは空の文字列だったとしましょう。その場合、ライターはfalseを返すか、Trueを返す必要がありますか?
明白な解決策の1つは、例外を投げることです(違法かもしれません)。しかし、例外をスローしたくない場合はどうすればよいですか?仮定すると、私はちょうどいくつかのログエントリを解析し、ファイルに書き込もうとしています。私がデータを書き込むたびに、私は真偽を期待しています。
あなたは「偽」とみなすことができます。何も書き込まないのと同じです。 –
あなたと、誤ったリターンの定義に依存しますが、それらが無効な入力である場合、例外をスローすることができます(そしてスローする必要があります)。 – AxelH
問題に関する正しい情報の代わりに 'false'を返すことは、古いファイルAPIが悪いとみなされた理由の1つです。詳細はhttp://java7fs.wikia.com/wiki/Why_File_sucksをご覧ください。 – Pshemo