int float double 忽略的细节
来源:互联网 发布:java的运行环境 编辑:程序博客网 时间:2024/05/01 22:53
突然 发现int float double这些基本类型的一些细节 我竟然没注意到
惯性思维:1/3=0.33333334
其实1/3=0 应为 1,3都默认是int /:取整
1f/3=0.33333334
1.0/3=0.3333333333333333 1.0默认double 3为int 结果为double
1.0f/3.0=0.3333333333333333 float/double=double
四则运算 的结果 类型 是 参与运算类型的 最大类型
浮点数的比较 与C++不同 可以用==直接比较 也可以用 封装类的compare方法 例如Float.compare(f1,f2)
Double.compare(d1,d2);
System.out.printf("%.2f",浮点数); 四舍五入的取两位小数
Java浮点数的精度问题:
1.01f+3.0=? 4.01 错了
其实 1.01f+3.0=4.009999990463257 而1.01+3.0=4.01(1.01f+3.0f=4.01f)
当一个 float 与 一个double 类型 且不是整数形式 进行四则运算是 就会出现 类似问题
要从 计算机组成原理 讲起
未完待续.......
0 0
- int float double 忽略的细节
- [Java][细节](int)n的执行结果,其中n为float或double类型
- 关于int,float,double与Integer、Float、Double的理解
- 如何得到int float double、...的范围。
- int, float和double的内存结构
- int,long,float,double 的最小值,最大值
- int,float,double的边界值
- int,long,long,double,float的范围
- int float double BigDecimal
- int、long、longlong、float、double、long double的范围
- float double int long long int的精度
- int float double 最值
- short int、long、float、double
- int float double 最大值,最小值
- int float double 最大值,最小值
- int float double 最大值,最小值
- int float double 最大值,最小值
- int float double 最大值,最小值
- undefined reference to main
- ListView之BaseAdapter的基本使用以及ViewHolder模式
- UVa 12186 Another Crisis(树形DP)
- BestCoder#29
- Practical C Programming - Chapter 4
- int float double 忽略的细节
- myeclipse 添加反编译插件(亲测有效)
- 禾禾禾禾禾禾禾禾禾禾禾禾和
- C++ 静态联编与静态联编
- ACM计算几何题目推荐
- 啊哈C——学习7.4存储英文人名
- 【百度】写一个字符串逆序的程序,时间复杂度和空间复杂度最低,效率越高越好
- leetcode题目的难度和面试频率
- iOS学习:调用相机,选择图片上传,带预览功能