Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
学ぶ 列挙子 | Structs & Enumerators
C#オブジェクト指向構造

book列挙子

メニューを表示するにはスワイプしてください

Enum(列挙型)は、Enumerator(列挙子)とも呼ばれ、いくつかの整数定数をまとめて管理するための構造体。これらの定数は基本的に型が int

以下は、enum を作成するための構文例。

index.cs

index.cs

copy
1234567
enum EnumName { Const1, Const2, Const3, ... }

デフォルトでは、enum の最初の要素の値は 0、2 番目の要素は 1 となり、以降も同様に増加。

例:

index.cs

index.cs

copy
12345678910
enum Days { Monday, // 0 Tuesday, // 1 Wednesday, // 2 Thursday, // 3 Friday, // 4 Saturday, // 5 Sunday // 6 }

これらの定数の値には、enumName.constantName 構文を使用してアクセス。

例:

index.cs

index.cs

copy
123456789101112131415161718192021222324
using System; enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } class ConsoleApp { static void Main(string[] args) { // Explicitly converting the enum elements to 'int' and then outputting them Console.WriteLine((int)Days.Monday); // 0 Console.WriteLine((int)Days.Wednesday); // 2 Console.WriteLine((int)Days.Friday); // 4 Console.WriteLine((int)Days.Sunday); // 6 } }

上記の例では、定数を明示的に int データ型に変換する必要があることに注意してください。これらの定数はデフォルトで Days 型であり、Days 列挙型は新しく作成したデータ型です。そのため、Days 型の変数に格納できます。

Days day = Days.Friday;

これは switch 文などで有用です。

例:

index.cs

index.cs

copy
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748
using System; enum Days { Monday, Tuesday, Wednesday, Thursday, Friday, Saturday, Sunday } class ConsoleApp { static void Main(string[] args) { Days day = Days.Friday; switch (day) { case Days.Monday: Console.WriteLine("It is Monday"); break; case Days.Tuesday: Console.WriteLine("It is Tuesday"); break; case Days.Wednesday: Console.WriteLine("It is Wednesday"); break; case Days.Thursday: Console.WriteLine("It is Thursday"); break; case Days.Friday: Console.WriteLine("It is Friday"); break; case Days.Saturday: Console.WriteLine("It is Saturday"); break; case Days.Sunday: Console.WriteLine("It is Sunday"); break; default: Console.WriteLine("Invalid Day"); break; } } }

列挙定数に手動で値を割り当てることも可能です。未割り当ての定数は、直前の要素の値からインクリメントされた値が自動的に割り当てられます。

index.cs

index.cs

copy
123456789101112131415161718192021222324252627
using System; enum Days { Monday, Tuesday, Wednesday = 5, Thursday, Friday, Saturday = 10, Sunday } class ConsoleApp { static void Main(string[] args) { // Explicitly converting the enum elements to 'int' and then outputting them Console.WriteLine((int)Days.Monday); Console.WriteLine((int)Days.Tuesday); Console.WriteLine((int)Days.Wednesday); Console.WriteLine((int)Days.Thursday); Console.WriteLine((int)Days.Friday); Console.WriteLine((int)Days.Saturday); Console.WriteLine((int)Days.Sunday); } }

1. C# における enum とは何ですか?

2. enum を定義するために使用されるキーワードはどれですか?

3. enum で、値の既定の基になる型は何ですか?

question mark

C# における enum とは何ですか?

正しい答えを選んでください

question mark

enum を定義するために使用されるキーワードはどれですか?

正しい答えを選んでください

question mark

enum で、値の既定の基になる型は何ですか?

正しい答えを選んでください

すべて明確でしたか?

どのように改善できますか?

フィードバックありがとうございます!

セクション 2.  10

AIに質問する

expand

AIに質問する

ChatGPT

何でも質問するか、提案された質問の1つを試してチャットを始めてください

セクション 2.  10
some-alt