Enum.GetNames メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
オーバーロード
GetNames(Type) |
指定した列挙体に含まれている定数の名前の配列を取得します。 |
GetNames<TEnum>() |
指定した列挙型に含まれている定数の名前の配列を取得します。 |
GetNames(Type)
- ソース:
- Enum.cs
- ソース:
- Enum.cs
- ソース:
- Enum.cs
指定した列挙体に含まれている定数の名前の配列を取得します。
public:
static cli::array <System::String ^> ^ GetNames(Type ^ enumType);
public static string[] GetNames (Type enumType);
[System.Runtime.InteropServices.ComVisible(true)]
public static string[] GetNames (Type enumType);
static member GetNames : Type -> string[]
[<System.Runtime.InteropServices.ComVisible(true)>]
static member GetNames : Type -> string[]
Public Shared Function GetNames (enumType As Type) As String()
パラメーター
- enumType
- Type
列挙型。
戻り値
enumType
に含まれている定数の名前の文字列配列。
- 属性
例外
enumType
が null
です。
enumType
パラメーターが Enum ではありません。
.NET 8 以降のバージョン: enumType
は、ブール型に基づく列挙型です。
例
GetNames メソッドの使用例を次に示します。
using namespace System;
enum class Colors
{
Red, Green, Blue, Yellow
};
enum class Styles
{
Plaid, Striped, Tartan, Corduroy
};
int main()
{
Console::WriteLine( "The members of the Colors enum are:" );
Array^ a = Enum::GetNames( Colors::typeid );
Int32 i = 0;
do
{
Object^ o = a->GetValue( i );
Console::WriteLine( o->ToString() );
}
while ( ++i < a->Length );
Console::WriteLine();
Console::WriteLine( "The members of the Styles enum are:" );
Array^ b = Enum::GetNames( Styles::typeid );
i = 0;
do
{
Object^ o = b->GetValue( i );
Console::WriteLine( o->ToString() );
}
while ( ++i < b->Length );
}
// The example displays the following output:
// The members of the Colors enum are:
// Red
// Green
// Blue
// Yellow
//
// The members of the Styles enum are:
// Plaid
// Striped
// Tartan
// Corduroy
using System;
public class GetNamesTest {
enum Colors { Red, Green, Blue, Yellow };
enum Styles { Plaid, Striped, Tartan, Corduroy };
public static void Main() {
Console.WriteLine("The members of the Colors enum are:");
foreach(string s in Enum.GetNames(typeof(Colors)))
Console.WriteLine(s);
Console.WriteLine();
Console.WriteLine("The members of the Styles enum are:");
foreach(string s in Enum.GetNames(typeof(Styles)))
Console.WriteLine(s);
}
}
// The example displays the following output:
// The members of the Colors enum are:
// Red
// Green
// Blue
// Yellow
//
// The members of the Styles enum are:
// Plaid
// Striped
// Tartan
// Corduroy
open System
type Colors =
| Red = 0
| Green = 1
| Blue = 2
| Yellow = 3
type Styles =
| Plaid = 0
| Striped = 1
| Tartan = 2
| Corduroy = 3
printfn "The members of the Colors enum are:"
for s in Enum.GetNames typeof<Colors> do
printfn $"{s}"
printfn "\nThe members of the Styles enum are:"
for s in Enum.GetNames typeof<Styles> do
printfn $"{s}"
// The example displays the following output:
// The members of the Colors enum are:
// Red
// Green
// Blue
// Yellow
//
// The members of the Styles enum are:
// Plaid
// Striped
// Tartan
// Corduroy
Public Class GetNamesTest
Enum Colors
Red
Green
Blue
Yellow
End Enum
Enum Styles
Plaid
Striped
Tartan
Corduroy
End Enum
Public Shared Sub Main()
Console.WriteLine("The members of the Colors enum are:")
For Each s In [Enum].GetNames(GetType(Colors))
Console.WriteLine(s)
Next
Console.WriteLine()
Console.WriteLine("The members of the Styles enum are:")
For Each s In [Enum].GetNames(GetType(Styles))
Console.WriteLine(s)
Next
End Sub
End Class
' The example displays the following output:
' The members of the Colors enum are:
' Red
' Green
' Blue
' Yellow
'
' The members of the Styles enum are:
' Plaid
' Striped
' Tartan
' Corduroy
注釈
戻り値配列の要素は、列挙定数のバイナリ値 (つまり、符号なしの大きさ) で並べ替えられます。 次の例では、負の値、ゼロ、および正の値を含む列挙体に対して、GetNamesメソッドによって返される配列に関する情報を表示します。
using System;
enum SignMagnitude { Negative = -1, Zero = 0, Positive = 1 };
public class Example
{
public static void Main()
{
foreach (var name in Enum.GetNames(typeof(SignMagnitude))) {
Console.WriteLine("{0,3:D} 0x{0:X} {1}",
Enum.Parse(typeof(SignMagnitude), name),
name);
} }
}
// The example displays the following output:
// 0 0x00000000 Zero
// 1 0x00000001 Positive
// -1 0xFFFFFFFF Negative
open System
type SignMagnitude =
| Negative = -1
| Zero = 0
| Positive = 1
for name in Enum.GetNames typeof<SignMagnitude> do
let p = Enum.Parse(typeof<SignMagnitude>, name)
printfn $"{p,3:D} 0x{p:X} {name}"
// The example displays the following output:
// 0 0x00000000 Zero
// 1 0x00000001 Positive
// -1 0xFFFFFFFF Negative
Public Enum SignMagnitude As Integer
Negative = -1
Zero = 0
Positive = 1
End Enum
Module Example
Public Sub Main()
Dim names() As String = [Enum].GetNames(GetType(SignMagnitude))
For Each name In names
Console.WriteLine("{0,3:D} 0x{0:X} {1}",
[Enum].Parse(GetType(SignMagnitude), name),
name)
Next
End Sub
End Module
' The example displays the following output:
' 0 0x00000000 Zero
' 1 0x00000001 Positive
' -1 0xFFFFFFFF Negative
同じ値を持つ列挙定数がある場合、対応する名前の順序は不定です。
適用対象
GetNames<TEnum>()
- ソース:
- Enum.cs
- ソース:
- Enum.cs
- ソース:
- Enum.cs
指定した列挙型に含まれている定数の名前の配列を取得します。
public:
generic <typename TEnum>
where TEnum : value class static cli::array <System::String ^> ^ GetNames();
public static string[] GetNames<TEnum> () where TEnum : struct;
static member GetNames : unit -> string[] (requires 'Enum : struct)
Public Shared Function GetNames(Of TEnum As Structure) () As String()
型パラメーター
- TEnum
列挙体の型。
戻り値
TEnum
に含まれている定数の名前の文字列配列。
例外
.NET 8 以降のバージョン: TEnum
は、ブール型に基づく列挙型です。
適用対象
.NET