一段枚举类型转换的代码,求解释

一段枚举类型转换的代码,求解释,第1张

这是段泛型代码,很好理解的。依据行号解释,请自行对照,不含空行。

第一行函数声明。泛型函数,包含一个T类型参数,T只能是值类型,最终返回T类型的结果。

第一行,准备要返回的值,使用default关键字准备好一个默认返回的值;

第二行,确定要转换的数据databaseValue是有效的(不为空且不是空字符串)

第三行,使用Enum.Parse将字符串值转换为实际的枚举值。随后的一个if则是判断是否转换成功,如果成功则将最后返回的值赋予前面准备返回的变量。

最后返回,不需要解释了吧。

1、(int)enum 即可。

2、可以转成是 long、int、short、byte,别的就不可以了。(string 是用的 Enum 类本身的 ToString() 方法,算不得转换)

3、基类是 System.Enum。所谓枚举,就是一个指定的常数(数!),如果不显式声明,默认是 Int32。

参考:

enum、int、string 相互转换 http://www.cnblogs.com/myx/archive/2011/06/17/Enum-Int-String.html

1、这个类型可以多种:int, char(n) -- 只要约定好就行,存贮枚举值的代码

2、枚举类型的允许值,可以由DB保证(比如在tradeInfo.tradeType上加约束);也可以只是由程序来控制 -- DB中加上约束会强壮一些,但会牺牲性能;

3、为了软件界面的易读性,通常需要让枚举值可读。每个枚举值对应的文本最好存贮在DB中。这个称为MasterData。可以建一张表存贮

4、如果有对应的主数据表,前面2中的约束,就可以改为Foreign Key

至于JAVA编程,枚举类型的处理,可以使用常量,也可以更优雅地定义一个类。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/9236506.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存