convert an enum to another type of enum

前端 未结 15 1603
感动是毒
感动是毒 2020-11-30 02:36

I have an enum of for example \'Gender\' (Male =0 , Female =1) and I have another enum from a service which has its own Gender enum (Male =0

15条回答
  •  甜味超标
    2020-11-30 03:08

    If we have:

    enum Gender
    {
        M = 0,
        F = 1,
        U = 2
    }
    

    and

    enum Gender2
    {
        Male = 0,
        Female = 1,
        Unknown = 2
    }
    

    We can safely do

    var gender = Gender.M;
    var gender2   = (Gender2)(int)gender;
    

    Or even

    var enumOfGender2Type = (Gender2)0;
    

    If you want to cover the case where an enum on the right side of the '=' sign has more values than the enum on the left side - you will have to write your own method/dictionary to cover that as others suggested.

提交回复
热议问题