基本数据类型float和double的区别
2018-03-27 14:20
288 查看
float : 单精度浮点数double : 双精度浮点数两者的主要区别如下: 01.在内存中占有的字节数不同 单精度浮点数在机内存占4个字节 双精度浮点数在机内存占8个字节 02.有效数字位数不同 单精度浮点数有效数字8位 双精度浮点数有效数字16位 03.数值取值范围 单精度浮点数的表示范围:-3.40E+38~3.40E+38 双精度浮点数的表示范围:-1.79E+308~-1.79E+308 04.在程序中处理速度不同 一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快如果不声明,默认小数为double类型,所以如果要用float的话,必须进行强转 例如:float a=1.3; 会编译报错,正确的写法 float a = (float)1.3;或者float a = 1.3f;(f或F都可以不区分大小写)注意:float是8位有效数字,第7位数字将会四舍五入面试题: 1.java中3*0.1==0.3将会返回什么?true还是false? fale,因为浮点数不能完全精确的表示出来,一般会损失精度。 2.java中float f = 3.4;是否正确? 不正确,3.4是双精度数,将双精度型(double)赋值给浮点型(float)属于向下转型会造 成精度损失,因此需要强制类型转换float f = (float)3.4;或者写成 float f = 3.4f;才可以。
public static void main(String[] args) { System.out.println(3*0.1); System.out.println(3*0.1==0.3); //float是8位有效数字,第7位数字将会四舍五入 float a =1.32344435f; System.out.println(a); }
输出结果:
相关文章推荐
- c语言基本数据类型short、int、long、char、float、double
- 关于C和C++中的基本数据类型int、long、long long、float、double、char、string的大小及表示范围
- C 语言包含的数据类型如下图所示: 一、数据类型与“模子” short、int、long、char、float、double 这六个关键字代表C 语言里的六种基本数据类型。 怎么去理解它们呢? 举个
- Tarena - 变量与java的基本数据类型(int,long,float,double,char,boolean)
- 关键字分节3(基本数据类型-short、int、long、char、float、double)
- iOS 基本数据类型~int、float、double、char格式化字符串
- c语言基本数据类型short、int、long、char、float、double大小及命名规则
- c语言基本数据类型short、int、long、char、float、double
- JAVA基本数据类型范围和float、double精度问题
- java byte、short、int、long、float、double、char基本数据类型范围
- c语言基本数据类型short、int、long、char、float、double
- C#的数据类型总结(2):decimal ,double,float的区别
- Qt 基本数据类型转换(int,float,double,datetime,string)
- 不同语言基本数据类型(int、char、float、double....)对应字节大小
- 基本数据类型操作二:float与double的范围和精度
- c语言基本数据类型short、int、long、char、float、double
- 如何实现double/float基本数据类型的四舍五入
- 不同语言基本数据类型(int、char、float、double....)对应字节大小
- float与double基本数据类型分析
- C语言基本数据类型int float double