猿问
回到首页
个人中心
反馈问题
注册登录
下载APP
首页
课程
实战
体系课
手记
专栏
慕课教程
迭代Flags Enum中的值?
如果我有一个包含标志枚举的变量,我可以以某种方式迭代该特定变量中的位值吗?或者我是否必须使用Enum.GetValues迭代整个枚举并检查哪些枚举?
摇曳的蔷薇
浏览 462
回答 3
3回答
慕哥9229398
static IEnumerable<Enum> GetFlags(Enum input){ foreach (Enum value in Enum.GetValues(input.GetType())) if (input.HasFlag(value)) yield return value;}
0
0
0
冉冉说
这是问题的Linq解决方案。public static IEnumerable<Enum> GetFlags(this Enum e){ return Enum.GetValues(e.GetType()).Cast<Enum>().Where(e.HasFlag);}
0
0
0
打开App,查看更多内容
随时随地看视频
慕课网APP
相关分类
C#
typedef入门问题
1 回答
继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续