枚举转换集合,flagAttribute的意义
来源:互联网 发布:ipad怎么清除缓存数据 编辑:程序博客网 时间:2024/05/22 03:33
枚举即单选
集合即多选
将集合问题变成是非逻辑问题,两个元素的集合,是非问题。
将单选问题转换成集成问题,
例如如果有集合{1,2,3}转换成枚枚举则有
C3(1)+C3(2)+C3(3)=3+6+1=10
即{1}{2}{3}{1,2}{2,3}{1,2,3}
举列:
问题采用枚举互斥方式
if(true1)
return 1
if(true2)
return 2
if(true1&true2)
return 3
如果现在还采用枚举方式,则如需10个if,else,而改为集合,则:
服务端返回“1,2,3”字符串(分隔组合方式,这种方式比较多)
然后js再indexof(1)>0则,msg+="tip1";
则只需三个if。
如果采用枚举组合方式,枚举元素有问题()1,2,4)
if(1,2,3,4,5,6,7)用三个数,表达了7种情况
1,2,5
10,20,50
100
可重复组合方式
=====================
flagAttribute的位枚举也在于此,
位标记集合是一种由组合出现的元素形成的列表,通常设计为以“位或”运算组合新值;枚举类型则通常表达一种语义相对独立的数值集合。而以枚举类型来实现位标记集合是最为完美的组合,简称为位枚举
位的两种运算&,|就可以将单选进行组合与筛选,即类似于+,-
这就是单选转换成了多选,select单选菜单转换成了多选列表。
flagAttribute的用法更多可参考:
http://book.csdn.net/bookfiles/684/10068421452.shtml
http://www.cnblogs.com/aiyagaze/archive/2006/09/15/505614.html
Flags特性影响ToString、Parse和Format方法的执行过程和结果。
枚举本质是给程序员用的,友好化信息而已,对于使用者及电脑都没意义。
==================
是,否,全部,互斥单选问题
是,否,多选即可解决
意义非常重大
网页控件中本质只有,单选(菜单select),多选(列表select),文本框(单行,多行,二进制文件框。无需输入hidden)
- 枚举转换集合,flagAttribute的意义
- enum枚举的意义
- java泛型,枚举的意义
- 集合的子集枚举
- enum(枚举)函数的用法和意义
- 枚举类型的转换
- 高效的枚举元素集合
- 枚举中枚举值和枚举数的相互转换
- iOS 定义具有位移操作的枚举的意义
- 枚举值转换的例子
- 枚举的转换怎么做
- JAVA----枚举的相互转换
- 枚举与字符串的转换
- C# 枚举类型的转换
- Java Notes:枚举 (Enumeration)的意义和使用
- 转换枚举类到集合,用于绑定到控件
- 枚举集合
- 集合枚举
- java.sql.Timestamp cannot be cast to java.sql.Date
- 联网系统中Cisco交换机的注意事项
- 谈下萝卜家园的win7
- strip_tags()函数
- JVM class加载机制的总结
- 枚举转换集合,flagAttribute的意义
- java 堆与栈
- OpenFalshPort 很好的开源图像报表
- WinCE RIL SMS
- linux下输出标准错误的方法
- 用sys_context 和Native Dynamic SQL实现变量绑定
- CREATE TRIGGER语法
- 淘宝购物平台
- 深入掌握JMS(四):实战Queue