Permalink
Cannot retrieve contributors at this time
Fetching contributors…
| Option Strict On | |
| ' <Snippet1> | |
| Imports System.Collections.Generic | |
| ' A traditional enumeration of some root vegetables. | |
| Public Enum SomeRootVegetables | |
| HorseRadish | |
| Radish | |
| Turnip | |
| End Enum | |
| ' A bit field or flag enumeration of harvesting seasons. | |
| <Flags()> Public Enum Seasons | |
| None = 0 | |
| Summer = 1 | |
| Autumn = 2 | |
| Winter = 4 | |
| Spring = 8 | |
| All = Summer Or Autumn Or Winter Or Spring | |
| End Enum | |
| ' Entry point. | |
| Public Class Example | |
| Public Shared Sub Main() | |
| ' Hash table of when vegetables are available. | |
| Dim AvailableIn As New Dictionary(Of SomeRootVegetables, Seasons)() | |
| AvailableIn(SomeRootVegetables.HorseRadish) = Seasons.All | |
| AvailableIn(SomeRootVegetables.Radish) = Seasons.Spring | |
| AvailableIn(SomeRootVegetables.Turnip) = Seasons.Spring Or _ | |
| Seasons.Autumn | |
| ' Array of the seasons, using the enumeration. | |
| Dim theSeasons() As Seasons = {Seasons.Summer, Seasons.Autumn, _ | |
| Seasons.Winter, Seasons.Spring} | |
| ' Print information of what vegetables are available each season. | |
| For Each season As Seasons In theSeasons | |
| Console.WriteLine(String.Format( _ | |
| "The following root vegetables are harvested in {0}:", _ | |
| season.ToString("G"))) | |
| For Each item As KeyValuePair(Of SomeRootVegetables, Seasons) In AvailableIn | |
| ' A bitwise comparison. | |
| If(CType(item.Value, Seasons) And season) > 0 Then | |
| Console.WriteLine(" " + _ | |
| CType(item.Key, SomeRootVegetables).ToString("G")) | |
| End If | |
| Next | |
| Next | |
| End Sub | |
| End Class | |
| ' The example displays the following output: | |
| ' The following root vegetables are harvested in Summer: | |
| ' HorseRadish | |
| ' The following root vegetables are harvested in Autumn: | |
| ' Turnip | |
| ' HorseRadish | |
| ' The following root vegetables are harvested in Winter: | |
| ' HorseRadish | |
| ' The following root vegetables are harvested in Spring: | |
| ' Turnip | |
| ' Radish | |
| ' HorseRadish | |
| ' </Snippet1> |