当前位置: 首页 > 面试题库 >

浮动vs双

路昆杰
2023-03-14
问题内容

是否曾经有过equals()两个浮点值之间的比较()false如果将它们进行比较DOUBLE而返回但true将它们与FLOAT进行比较而返回的情况?

作为小组项目的一部分,我正在编写一些过程来比较任何给定类型的两个数值。这里是4种我不得不应付干脆:doublefloatintlong。因此,我想将一个函数分组double并归float为一个函数,也就是将任何一个都float进行转换double并进行比较。

这会导致任何不正确的结果吗?

谢谢。


问题答案:

如果将双精度型转换为浮点型,并且它们之间的差异超出了浮点型的精度,则可能会遇到麻烦。

例如,假设您有两个double值:

9.876543210
9.876543211

浮点数的精度只有六个十进制数字。这将意味着即使double值本身不相等,两个float值也将9.87654相等。

但是,如果您要谈论的是将浮点数转换为双精度数,则相同的浮点数应为您提供相同的双精度数。如果浮子是不同的,那么额外的精度将确保双打也是不同的。



 类似资料:
  • 问题内容: 在另一个Bruce Eckel练习中,我编写的代码采用一种方法并更改另一个类中的值。这是我的代码: 它抛出一个错误,提示“可能会丢失精度”。 无法S为S作为呢? 提前致谢 问题答案: 是的,但是您必须指定它们是浮点数,否则将它们视为双精度数: 数字末尾的“ f”使其成为浮点数而不是双精度数。 Java不会自动将double范围缩小为float。

  • 我编写了一个程序来演示Go中的浮点错误: 它打印: 这与用C编写的相同程序的行为相匹配(使用双代码类型) 但是,如果改用,程序就会陷入无限循环!如果将C程序修改为使用而不是,它将打印 为什么在使用时,Go程序的输出与C程序的输出不一样?

  • 问题内容: 我的问题 1. 这些方法中的任何一种是专业的网页设计师所偏爱的吗? 2. 绘制网站时,Web浏览器是否会首选这些方法? 3. 这仅仅是个人喜好吗? 4. 我还缺少其他技巧吗? 5. 注意:以上问题与设计多列布局有关 我的想法: 我确定我会遗漏大量东西,例如某些会破坏布局的异常,但display:table-cell;似乎效果最好,而且我想我会float:left;像以前那样一头雾水地开

  • 问题内容: 我编写了一个程序来演示Go中的浮点错误: 它打印: 这与用C编写的同一程序的行为匹配(使用类型) 但是,如果使用,则该程序将陷入无限循环!如果您将C程序修改为使用a 而不是a ,则会输出 使用时,为什么Go程序没有与C程序相同的输出? 问题答案: 同意ANisus,go在做正确的事。关于C,我不相信他的猜测。 C标准没有规定,但是libc的大多数实现会将十进制表示形式转换为最接近的浮点

  • 主要内容:清除浮动浮动可以使一个元素脱离自己原本的位置,并在父元素的内容区中向左或向右移动,直到碰到父元素内容区的边界或者其它浮动元素为止。另外,在浮动元素之后定义的文本或者行内元素都将环绕在浮动元素的一侧,从而可以实现文字环绕的效果,类似于 Word 中图文混排。 注意:浮动(float)属性仅对非绝对定位的元素有效,跟随浮动元素的文本或行内元素将围绕在浮动元素的另一侧,例如向左浮动的话其它元素将围绕在浮动元素的

  • 本文最初发表于博客园,并在GitHub上持续更新。以下是正文。 文本主要内容 标准文档流 标准文档流的特性 行内元素和块级元素 行内元素和块级元素的相互转换 浮动的性质 浮动的清除 浏览器的兼容性问题 浮动中margin相关 关于margin的IE6兼容问题 标准文档流 宏观地讲,我们的web页面和photoshop等设计软件有本质的区别:web页面的制作,是个“流”,必须从上而下,像“织毛衣”。