Open In App

C# | Type.GetEnumValues() Method

Last Updated : 27 Aug, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

Type.GetEnumValues() Method is used to return an array of the values of the constants in the current enumeration type.
Syntax: 

public virtual Array GetEnumValues ();

Return Value: This method returns an array which contains the values. The elements of the array are sorted by the binary values i.e. the unsigned values of the enumeration constants.
Exception: This method will give ArgumentException if the current type is not an enumeration.
Below programs illustrate the use of the above-discussed method:
Example 1: 

csharp




// C# program to demonstrate the
// Type.GetEnumValues() Method
using System;
using System.Globalization;
using System.Reflection;
 
class GFG {
 
    // Defining enum ABC
    enum ABC { A,
               B,
               C,
               D,
               E,
               F }
 
    // Main Method
    public static void Main()
    {
 
        // try-catch block to
        // handle exceptions
        try {
 
            // Creating and initializing object
            // of ABC with instance of enum ABC
            ABC a = ABC.A;
 
            // Declaring and initializing
            // object of Type
            Type type = a.GetType();
 
            // Getting an array of the values
            // of the constants
            // By using GetEnumValues() method
            Array obj = type.GetEnumValues();
 
            // Display values of the constants
            Console.Write("Values of the constants is : {0} ", obj);
        }
 
        // catch ArgumentException here
        catch (ArgumentException e)
        {
            Console.WriteLine("The current type is not an enumeration.");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Output: 

Values of the constants is : GFG+ABC[] 

 

Example 2: For ArgumentException

csharp




// C# program to demonstrate the
// Type.GetEnumValues() Method
using System;
using System.Globalization;
using System.Reflection;
 
class GFG {
 
    // Defining enum ABC
    enum ABC { A,
               B,
               C,
               D,
               E,
               F }
 
    // Main Method
    public static void Main()
    {
 
        // try-catch block to
        // handle exceptions
        try {
 
            // Creating and initializing object
            // of ABC with instance of enum ABC
            ABC a = ABC.A;
 
            // Declaring and initializing
            // object of Type
            Type type = typeof(int);
 
            // Getting an array of the values
            // of the constants
            // By using GetEnumValues() method
            Array obj = type.GetEnumValues();
 
            // Display values of the constants
            Console.Write("Values of the constants is : {0} ", obj);
        }
 
        // catch ArgumentException here
        catch (ArgumentException e)
        {
            Console.WriteLine("The current type is not an enumeration.");
            Console.Write("Exception Thrown: ");
            Console.Write("{0}", e.GetType(), e.Message);
        }
    }
}


Output: 

The current type is not an enumeration.
Exception Thrown: System.ArgumentException

 

Reference:
 

 



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads