繁体   English   中英

int 和 double 的区别

[英]Difference between int and double

为什么有人会使用int而不是double

似乎 double 比int灵活得多。

intdouble具有不同的语义。 考虑分工。 1/201.0/2.00.5 在任何给定的情况下,其中一个答案是对的,另一个是错的。

也就是说,有一些编程语言,例如 JavaScript,其中 64 位浮点数是唯一的数字数据类型。 您必须显式截断一些除法结果才能获得与 Java int相同的语义。 Java 等支持整数类型的语言可以自动截断整数变量。

除了具有与double不同的语义外, int算术通常更快,并且较小的大小(32 位与 64 位)可以更有效地使用缓存和数据传输带宽。

整数运算是精确的。 double是浮点数据类型,只要有分数,浮点运算就是近似的。

在许多实现(例如大多数 32 位系统)中, double占用的空间也是int的两倍。

int 是整数的二进制表示,double 是双精度浮点数。

简短的回答:

int使用四个字节的内存(它不能包含小数),而double使用八个字节的内存。 只是有不同的工具用于不同的目的。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM