decimal对应的java类型 使用MySQL的时候bit和tinyint类型用的多吗?
使用MySQL的时候bit和tinyint类型用的多吗?
我很高兴回答您的问题:
bit和tinyint类型肯定使用得更多。
从数字类型概述:
1,位[(m)
]位字段类型。如果省略,默认值为1到64位。
此数据类型已添加到MyISAM的MySQL 5.0.3中,并在5.0.5中扩展到memory、InnoDB、BDB和ndbcluster。在5.0.3之前,bit是tinyint(1)的同义词。
这是一种数字类型,存储小数。它通常对应于编辑语言中的小字典或枚举类型。它可以节省空间,避免存储超出范围的值。2Tinyint[(m)][unsigned][zerofill
]是一个非常小的整数。符号范围是-128到127。无符号范围是0到255。
例如,位(1)直接对应于Java语言的布尔类型true和false。用于保存状态时,一个字段最多可以保存64个状态。
此外,请考虑这一点:
1,bool,Boolean
这些类型是tinyint(1)的同义词。零被认为是错误的。非零值被认为是真的。
总之,在我的项目中,我通常使用位(1)来存储布尔值,因为它只占用一个字节。当然,我也可以使用int,但是会造成资源的浪费。
建议对枚举类使用tinyint。当然,enum也可以使用,但是它的可移植性不是很好。
Java如何实现byte和bit之间的互转?
首先,我们需要了解Java中没有位数据类型,所以如果您想表示位,可以使用byte[]方法
1 byte=8 bit
只要您提取每个位,就需要将其向右移动到右边的第一位,并在和1中执行and运算,这样除了所需位之外,其他都是0。它的二进制(1,0)正好是数字1,0;
因此我们可以将它封装为://byte to bit
byte[]temp=新字节[8
]for(int i=7 i>=0 i--){
temp[i]=(byte)((A>> i)&;1) ]}
]return temp
}
//位到字节
公共静态字节位(byte[]a){
byte temp=(byte)0
For(int i=0 i< bits i){
temp=temp | a[i]<< i]}]return temp]}
]希望能对您有所帮助,谢谢。
decimal对应的java类型 bigint对应java什么类型 java的text类型
版权声明:本文内容由互联网用户自发贡献,本站不承担相关法律责任.如有侵权/违法内容,本站将立刻删除。