加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何在Swift中找到Double和Float的最大值

发布时间:2020-12-14 06:00:54 所属栏目:百科 来源:网络整理
导读:当前学习Swift,有很多方法可以找到不同种类的Integer的最大值和最小值,如Int.max和Int.min。 有没有办法找到Double和Float的最大值?此外,我应该提到哪种文件这种问题?我目前正在读苹果的Swift编程语言。 虽然没有Double.max,它在C float.h头中定义,你
当前学习Swift,有很多方法可以找到不同种类的Integer的最大值和最小值,如Int.max和Int.min。

有没有办法找到Double和Float的最大值?此外,我应该提到哪种文件这种问题?我目前正在读苹果的Swift编程语言。

虽然没有Double.max,它在C float.h头中定义,你可以通过import Darwin在Swift中访问它。
import Darwin

let fmax = FLT_MAX
let dmax = DBL_MAX

这些分别是大约3.4 * 10 ^ 38和1.79 * 10 ^ 308。

但要记住,浮点数并不简单(浮点数从来不是这么简单)。当保持数字这么大,你失去精度,以类似的方式丢失精度与非常小的数字,因此:

let d = DBL_MAX
let e = d - 1.0
let diff = d - e
diff == 0.0  // true

let maxPlusOne = DBL_MAX + 1
maxPlusOne == d  // true

let inf = DBL_MAX * 2
// perhaps infinity is the “maximum” 
inf == Double.infinity  // true

所以在你进行一些计算,可能会刷新这些限制之前,你应该可以读取浮点。 Here和here可能是一个好的开始。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读