首页 > 如何根据字符方便的从枚举类型中获取对应的值?

如何根据字符方便的从枚举类型中获取对应的值?

需求

如何根据传递过来的字符,方便的从枚举类型中获取对应的整数值。
比如:有下面的枚举类型数据Keys,当得到字符A时,如何获取对应的整数值65
注:判断语句(if else、switch case)除外

private int getVK(string key)
{
    //方法1
    if(key=="A"){
        return Keys.A;
    }else...
    //方法2
    switch(...)
    //方法3
}

方法1和方法2的缺点是不灵活,而且如果enum中有很多数据,则需要一个个的写。

public enum Keys
{
    A = 65,
    B = 66,
    C = 67,
    D = 68,
    E = 69,
    F = 70,
    G = 71,
    H = 72,
    I = 73,
    J = 74,
    K = 75,
    L = 76,
    M = 77,
    N = 78,
    O = 79,
    P = 80,
    Q = 81,
    R = 82,
    S = 83,
    T = 84,
    U = 85,
    V = 86,
    W = 87,
    X = 88,
    Y = 89,
    Z = 90
}

Enum.Parse(typeof(Keys),"A")

【热门文章】
【热门文章】