数据库如何存储枚举
java什么时候用常量,什么时候用枚举呢?
java什么时候用常量,什么时候用枚举呢?
好像用起来差不多,都一样。
写代码是一种艺术,结构层次好的代码可以少出bug,提高效率。而在Java编程中,什么时候用常量,什么时候用枚举呢?曾经的我也迷茫过。当然,经历了多年的编程之后,也陆陆续续有了自己的思考。
在我看来,具备一定规则的常量集合需要使用枚举类,既包含一年四季,一周七天这种自然枚举,也包含在编译时就知道所有可能值的其它情况,比如加减乘除等运算。枚举值不必是固定的,可以在后面继续添加。
而对于毫无规则归类可言的一些常量:如SUCCUSS字符串、密钥串、路径等等这些,可以放在一个常量类里面糅在一起。在《Effective Java》一书中,作者建议使用一般类加私有构造方法的方式,而在 sonar 代码质量扫描中,也将该方式定为常量类处理的推荐方式。
而相对于常量类,枚举的优点是很明显的。枚举更具可读性、更安全,并且功能更强大。许多枚举不需要明显的构造器和成员变量,而有些枚举通过为每个枚举值绑定数据,并且为这些数据提供函数,可以添加额外的功能,枚举值也可以直接用来进行数据库存储。
总而言之,建议在具备相关性的前提下,能使勇枚举的地方一定要要用枚举,如果无法使用枚举时,建议使用带有私有构造函数的常量类。
作者:夕阳雨晴,欢迎关注我的头条号:偶尔美文,主流Java,为你讲述不一样的码农生活。
常量不可变,枚举是分类的一种说明方式
C语言如何使用num?
num没有什么特别的意思,是自己定义的变量,常作为number的缩写。
基本构成:
数据类型:C的数据类型包括:整型、字符型、实型或浮点型(单精度和双精度)、枚举类型、数组类型、结构体类型、共用体类型、指针类型和空类型。
常量与变量:常量其值不可改变,符号常量名通常用大写。
变量是以某标识符为名字,其值可以改变的量。标识符是以字母或下划线开头的一串由字母、数字或下划线构成的序列,请注意第一个字符必须为字母或下划线,否则为不合法的变量名。变量在编译时为其分配相应存储单元。
数组:如果一个变量名后面跟着一个有数字的中括号,这个声明就是数组声明。字符串也是一种数组。它们以ASCII的NULL作为数组的结束。要特别注意的是,中括号内的索引值是从0算起的。
指针:如果一个变量声明时在前面使用 * 号,表明这是个指针型变量。换句话说,该变量存储一个地址,而 *(此处特指单目运算符 * ,下同。C语言中另有 双目运算符 *) 则是取内容操作符,意思是取这个内存地址里存储的内容。指针是 C 语言区别于其他同时代高级语言的主要特征之一。
指针不仅可以是变量的地址,还可以是数组、数组元素、函数的地址。通过指针作为形式参数可以在函数的调用过程得到一个以上的返回值,不同于return(z)这样的仅能得到一个返回值。
字符串:C语言的字符串其实就是以