Java基本数据类型有哪些,取值范围分别是什么
byte: 1字节 8位 -2^7~2^7-1 //这么理解吧,一个字节可以表示多少个数呢?2^8=256个数,那么正数最大可以表示到多少,01111111=127,所以正数的上限我们就确定了,那么根据钟表原则,正数+1得到128,此时钟表超出溢出,来到它的最小值,即负数范围,得到此128应该是-128,此后再+1,就又是指针那么正常转了.
short: 2字节 16位 -2^15~2^15-1
int : 4字节 32位 -2^31~2^31-1
long: 8字节 64位 -2^63~2^63-1
float: 4字节 32位 -2^128~2^128
double:8字节 64位 -2^1024~2^1024
char: 2字节 16位
Boolean: 1字节 8位
种类-----符号位-----指数位-----尾数位
float---第31位-----第30-23位--第22-0位
double--第63位-----第62-52位--第51-0位
取值范围主要看指数部分:
它们都是按IEEE754标准存放的,即SEM,标准中规定的是:
float的指数部分有8位,由于是有符号类类型,所以,得到的指数范围是-128~128
double的指数部分有11位,由于是有符号类类型,所以,得到的指数范围是-1024~1024
精度(有效数字)主要看尾数部分:
float的尾数位有23位,因为2^23=8388608,对应7个有效数字,所以精度能保证到小数点后7位
同理,double的精度能保证到小数点后16位。
这一路,灯火通明
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY