C# 枚举设置Flags后的使用

带有Flags特性进行或运算需要让多个或运算后不能与现有Enum值重合

[Flags]
public enum DictionaryType
{
Unknow = 1,

Type = 2,

Purpose = 4,

Color = 8,

}

合并

var dic=DictionaryType.Type | DictionaryType.Color;

判断是否存在

dic.HasFlag(DictionaryType.Type);

或者

var isHava = (dic & DictionaryType.Type) != 0;

去掉一个值

dic = dic & (~DictionaryType.Type);

取反一个值

var isHava = (dic & DictionaryType.Type) != 0;

if(isHava)

{

  dic = dic & (~DictionaryType.Type);

}

else

{

  dic = dic | DictionaryType.Type;

}

posted @   獠牙  阅读(14)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?
点击右上角即可分享
微信分享提示