列挙型の値を受け入れるメソッドがあるとします。このメソッドは、値が有効であることを確認した後、可能な値を超えてswitch
となります。だから質問は、予期しない値を扱う好ましい方法は何かの後に値の範囲が検証されていますか?例えば予期しない列挙型の値を処理するための好ましい方法は何ですか?
:
enum Mood { Happy, Sad }
public void PrintMood(Mood mood)
{
if (!Enum.IsDefined(typeof(Mood), mood))
{
throw new ArgumentOutOfRangeException("mood");
}
switch (mood)
{
case Happy: Console.WriteLine("I am happy"); break;
case Sad: Console.WriteLine("I am sad"); break;
default: // what should we do here?
}
default
ケースを処理する好ましい方法は何ですか?
- 私が好む私は
...それはすべての方法ダウンナチョスだ - あなたは常にそこに一緒にすべての小さなナチョ・オブジェクトを保持しているいくつかの大きな厄介な「チーズ核」ですが、あなたはそれを見つけることができないという感覚を得ます自分の意見であなたの意見が異なる場合、またはこのケースをサポートする別のケースがある場合は、あなたの知識を共有してください。質問の目的は、この状況に直面している他の人(そして私)を助けるために、トピックに関するアイデアを集めることです。 –
なぜこれがJavaとマークされましたか? – OscarRyz
@Oscar:言語に依存しない質問IMHOでなければなりません。人々はここで両方の言語の答えを見つけることができます。 –