详解C#枚举中使用Flags特性
如果对一个值可以包含多个,那么可以使用枚举,加上Flags。
新建一个Flags枚举类型:
[Flags]public enum Show{A = 0x00000001,B = 0x00000010,C = 0x00000100,D = 0x00001000,}
合并多个值 合并多个,使用
|
Show show = Show.A | Show.B
判断是否存在某个值 一个简单方法是用 HasFlag,但是一个方法是用
&
Show show=Show.A | Show.B; show.HasFlag(Show.A); //其他bool 包含 = (show & Show.A)!=0;
去掉一个值
Show show=Show.A | Show.B; show=show & (~Show.A);
取反一个值
Show show = Show.A | Show.B; bool 包含 = (show & Show.A)!=0; if(包含){show=show & (~Show.A); }else{show=show | Show.A; }
参考:
C# 位域[flags]
【详解C#枚举中使用Flags特性】到此这篇关于C#枚举中使用Flags特性的文章就介绍到这了,更多相关C#枚举Flags特性内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
推荐阅读
- Java的jmap命令使用详解
- 三分钟学习一下JavaScript中map对象的用法
- 『德不孤』Pytest框架|『德不孤』Pytest框架 — 14、Pytest中的conftest.py文件
- Photoshop 2022 mac(PS2022)v23.2.1中文版
- 设计模式之【适配器模式】
- 逆波兰算法、中缀表达式转后缀表达式
- 面试官(Redis中的缓冲区了解吗)
- 关于Mybatis中SQL节点的深入解析
- 又一重量级国赛来啦,保研可加分|又一重量级国赛来啦,保研可加分 | 中国软件杯飞桨遥感赛道正式启动
- Python学习之包与模块详解