[C#] 列挙体の値を取得する (すごく簡単)
列挙体は設定されている値を気にしなくても使え、それが利点にもなっています。
が、使いようによっては、列挙体のそれぞれに値を決めて使う場面があります。
例えば、このような列挙体を定義したとします。
enum TestType { Test1 = 1, Test2 = 2, Test3 = 4, Test4 = 8 }
この時、”Test3″という値ではなく”4″が取得したいと思ったら、どのようにすればよいでしょう。
とても難しく考えてたんですが、答えはとっても簡単でした。
intでキャストするだけです。
int value = (int)TestType.Test3; MessageBox.Show(this, "値=" + value);
ちなみに”Test3″という文字列が欲しい場合は、単に
MessageBox.Show(this, "値=" + TestType.Test3.ToString());
だけです。
TestType.Test3を取得すると文字列の”Test3″が取得されるのに、
それをintでキャストすると値の4が取れるなんて面白い。
簡単すぎて拍子抜けです。
== ランキングに参加しています。ぜひクリックお願いします ==
トイザらス発! 子供向けの Android 4.0 タブレット「MEEP!」ですが・・・ [C#] ClientSizeはスクロールバーの幅を除外したサイズ!
わかりやすい。 またお願いします。