java的枚举会比常量更耗内存吗?
从内存上来说,如果常量不单独放在一个constance类中,是要比枚举少一个指针。内存少4个字节。
生命周期跟具体使用方式有关,一般情况下如果常量声明为static,那么生命周期跟枚举是一致的。
把string当enum用,有性能损失吗?
有。
以c语言为例,在内存中创建一个字符串至少需要一个char数组来存储,因为要存储结束标识符;而枚举实际则是一个结构,其内的枚举项可以定义为整型,要比字符串的存储方便,也开销少。
而且把字符串当做枚举来用,字符串也容易写错,而枚举都定义成数字常量,编译器编译时容易发现错误,提示开发者及时改正,便于维护。
原文标题:枚举和常量类哪个好 java的枚举会比常量更耗内存吗?,如若转载,请注明出处:https://www.saibowen.com/tougao/19315.html
免责声明:此资讯系转载自合作媒体或互联网其它网站,「赛伯温」登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述,文章内容仅供参考。