VB.NET 列挙型(Enum型)のサンプル

VB.NETの列挙型のサンプルです。

目次

サンプル 列挙型(Enum型)とは
  For文とEnumのメソッド
  列挙型の定数に独自の値を設定する

列挙型(Enum型)とは

アクセス修飾子 Enum 名前 {
 定数1,
 定数2,
 ・・・
End Enum

列挙型のサンプルです。

Public Enum Color
	RED
	YELLOW
	BLUE
End Enum

Module Module1
	Sub Main()
		Dim c1 As New Class1
		c1.print1(Color.BLUE)
	End Sub
End Module

Public Class Class1
	Public Sub print1(c1 As Color)
		If c1 = Color.RED Then
			Console.WriteLine("赤")

		ElseIf c1 = Color.YELLOW Then
			Console.WriteLine("黄")

		ElseIf c1 = Color.BLUE Then
			Console.WriteLine("青") '青が出力される
		End If
	End Sub
End Class

1行目にEnumがあります。列挙型です。
2~4行目でカンマ区切りは不要です。
10行目は、メソッドの引数に列挙型の値を指定しています。
15行目は、列挙型の値を引数として受け取ります。
16行目以降は、if文で列挙型の定数の比較をしています。

For文とEnumのメソッド

Public Shared Function GetNames (enumType As Type) As String()
Public Shared Function GetValues (enumType As Type) As Array

For文とEnumのメソッドのサンプルです。

Public Enum Color
	RED
	YELLOW
	BLUE
End Enum

Module Module1
	Sub Main()
		For Each s In [Enum].GetNames(GetType(Color))
			Console.WriteLine(s) 'RED YELLOW BLUE
		Next

		Dim i As Integer
		For Each i In [Enum].GetValues(GetType(Color))
			Console.WriteLine(i) '0 1 2
		Next
	End Sub
End Module

GetNamesメソッドは、定数の名前を取得します。
GetValuesメソッドは、定数の値を取得します。

列挙型の定数に独自の値を設定する

列挙型の定数に独自の値を設定できます。

Public Enum Color
	RED = 10
	YELLOW = 11
	BLUE = 12
End Enum

Module Module1
	Sub Main()
		For Each s In [Enum].GetNames(GetType(Color))
			Console.WriteLine(s) 'RED YELLOW BLUE
		Next

		Dim i As Integer
		For Each i In [Enum].GetValues(GetType(Color))
			Console.WriteLine(i) '10 11 12
		Next
	End Sub
End Module

2~4行目の10,11,12が独自の値です。
GetValuesメソッドで設定した値を取得します。

関連の記事

VB.net 構造体のサンプル
VB.NET With~End Withのサンプル

△上に戻る