A. java中float和double的取值范围是什么
float:4字节(32bit),IEEE 754. 取值范围:
[-3.40282346638528860e+38 , -1.40129846432481707e-45] ∪ [1.40129846432481707e-45 ~ 3.40282346638528860e+38] 。
double: 8字节(64bit) ,IEEE 754. 取值范围:
[-1.79769313486231570e+308,-4.94065645841246544e-324] ∪ [4.94065645841246544e-324,1.79769313486231570e+308] 。
(1)java中浮点数扩展阅读
基本数据类型的特点,位数,最大值和最小值。
1、
基本类型:short 二进制位数:16
包装类:java.lang.Short
最小值:Short.MIN_VALUE=-32768 (-2的15此方)
最大值:Short.MAX_VALUE=32767 (2的15次方-1)
2、
基本类型:int 二进制位数:32
包装类:java.lang.Integer
最小值:Integer.MIN_VALUE= -2147483648 (-2的31次方)
最大值:Integer.MAX_VALUE= 2147483647 (2的31次方-1)
3、
基本类型:long 二进制位数:64
包装类:java.lang.Long
最小值:Long.MIN_VALUE=-9223372036854775808 (-2的63次方)
最大值:Long.MAX_VALUE=9223372036854775807 (2的63次方-1)
4、
基本类型:float 二进制位数:32
包装类:java.lang.Float
最小值:Float.MIN_VALUE=1.4E-45 (2的-149次方)
最大值:Float.MAX_VALUE=3.4028235E38 (2的128次方-1)
5、
基本类型:double 二进制位数:64
包装类:java.lang.Double
最小值:Double.MIN_VALUE=4.9E-324 (2的-1074次方)
最大值:Double.MAX_VALUE=1.7976931348623157E308 (2的1024次方-1)
B. java里的浮点数是什么意思
float表示单精度浮点数在机内占4个字节,用32位二进制描述。
浮点数在机内用指数型式表示,分解为:数符,尾数,指数符,指数四部分。
数符占1位二进制,表示数的正负。
指数符占1位二进制,表示指数的正负。
尾数表示浮点数有效数字,0.xxxxxxx,但不存开头的0和点
指数存指数的有效数字。
指数占多少位,尾数占多少位,由计算机系统决定。
可能是数符加尾数占24位,指数符加指数占8位 -- float.
C. java里的浮点数是什么意思。
有float和double。默认都是使用的double类型,Float是32位,4个字节;Double是64位,8个字节;推荐double
D. java浮点型数据表示方法有几种,各是什么
Java浮点型数据类型有float和double两种,其中float是单精度浮点型,占32位,其对应的封装类为Float,double是双精度浮点型,占64位,其对应的封装类为Double,关于Float类和Double类详情请参考java api。
说明
数据类型所占位数的范围:
float表示数据范围 3.4e-038~3.4e+038 ;
double表示数据范围 1.7e-308~1.7e+308 ;
双精度类型double比单精度类型float具有更高的精度,和更大的表示范围,常常用于科学计算等高精度场合。
变量定义示例
floatf=123.456f;//指定变量f为float型
doubled=123.456;//指定变量d为double型,浮点数默认类型
E. java里的浮点数是什么意思
这是位运算,一般在硬件控制方面用的多,光看表达式的话无法知道其具体的意义是什么。得结合实际才行。
&叫做“按位与”,其规则是:0&0=0
1&0=0
0&1=0
1&1=1
“|”叫做“按位或”,运算规则是:0|0=0
1|0=1
0|1=1
1|1=1
0x7fffff用32位二进制表示就是
0000
0000
0111
1111
1111
1111
1111
1111
根据按位与的运算法则就是把bits的高9位清零。
0x800000用32位二进制表示是
0000
0000
1000
0000
0000
0000
0000
0000
根据按位或的运算法则就是把第24位置1。
那么综合来看,((bits
&
0x7fffff)|0x800000)的意思就是先把bits的高9位清零,然后再把第24位置1。
关于前半部分,“<<”叫做左移,就是把所有二进制位向左移动若干位。和上面同理,就是先把bits的高9位清零后,再左移一位。
至于问号,就不用解释了吧?
F. Java语言中的浮点型数据的float和double的单精度和双精度到底是啥意思
主要有下面几个区别,手册上的,希望能帮到你
1、变量类型不同
float属于单精度型浮点数据。
double属于双精度型浮点数据。
2、指数范围不同
float的指数范围为-127~128。
double而double的指数范围为-1023~1024
3、表达式指数位不同
float的表达式为1bit(符号位)+8bits(指数位)+23bits(尾数位)
double的表达式为1bit(符号位)+ 11bits(指数位)+ 52bits(尾数位)
4、占用内存空间不同
float占4个字节(32位)内存空间,其数值范围为3.4E-38~3.4E+38。
double占8 个字节(64位)内存空间,其数值范围为1.7E-308~1.7E+308。
5、有效位数不同
float只能提供七位有效数字。
double可提供16位有效数字。
G. java中如何判断一个浮点数是float型的还是double的
java中常量
的浮点数字就被认为是double型的,而且不能直接赋给float型的变量。。像float
a=1.2;
这样的编绎直接出错。。要写成float
a=1.2f;
才行。
H. Java中怎么把浮点数转变成整数只保留整数部分
通过转换为字符串,再截取整数部分:
float a = 1.1f;//定义一个浮点变量a
String str = String.valueOf(a);//浮点变量a转换为字符串str
int idx = str.lastIndexOf(".");//查找小数点的位置
String strNum = str.substring(0,idx);//截取从字符串开始到小数点位置的字符串,就是整数部分
int num = Integer.valueOf(strNum);//把整数部分通过Integer.valueof方法转换为数字
扩展资料:
Java的浮点类型有两种:float和double。
Java的浮点类型有固定的表数范围和字段长度,字段长度和表数范围和机器无关,double类型代表双精度浮点数,float类型代表单精度浮点数。
Java的浮点数遵循IEEE754标准,采用二进制数据的科学计数法来表示浮点数,对于float型数值,第1位是符号位,接下里8位表示指数,再接下来的23位表示尾数;对于double类型数值,第一位也是符号位,接下来的11位表示指数,再接下来的52位表示尾数。
I. java中的float类型
java中的float类型
.浮点类型
1) 与整数类型一样,同样有固定的表述范围和字段长度,且不受具体的操作系统的影响,保证了Java的跨平台性
2) Java语言中,浮点类型有两种表现形式,分别是:
a. 十进制数形式, 如3.14
b. 科学计数法,如,3.14e2, 3.14e-2, -3.14E2
3) Java语言中,默认的浮点数类型是double,声明float类型的时候,后面必须添加字母f或者F,如3.14F,3.14f
4) Java中两种浮点类型的表述范围:
J. Java中怎么把浮点数转变成整数只保留整数部分
两种方式:
1、通过强制类型转换
float a=1.1f;//定义一个浮点变量a
int b = (int)a;//这里使用(int)方式对float进行强转,结果为12、通过转换为字符串,在截取整数部分
float a = 1.1f;//定义一个浮点变量a
String str = String.valueOf(a);//浮点变量a转换为字符串str
int idx = str.lastIndexOf(".");//查找小数点的位置
String strNum = str.substring(0,idx);//截取从字符串开始到小数点位置的字符串,就是整数部分
int num = Integer.valueOf(strNum);//把整数部分通过Integer.valueof方法转换为数字