gpt4 book ai didi

swift - NSNumberFormatter stringFromNumber 应该能够接受 Swift.Int 吗?

转载 作者:行者123 更新时间:2023-11-28 13:22:10 25 4
gpt4 key购买 nike

我今天注意到,尽管 NSNumberFormatter stringFromNumber 的文档说函数声明采用 NSNumber 作为其参数 ...

var playerScore = 3456789
let displayScore: String = numberFormatter.stringFromNumber(NSNumber.numberWithInteger(playerScore))

它也可以通过简单地提供一个 Swift.Int 来正常工作......

var playerScore = 3456789
let displayScore: String = numberFormatter.stringFromNumber(playerScore)

这是编译器的聪明之处吗?或不应该工作的东西。像这样的事情有时会让 Swift 有点难以理解,尤其是当它有意为新开发人员简化事情时。

最佳答案

是的,这是预期的行为。 Swift 自动将某些原生数字类型(例如 IntFloat)桥接到 NSNumber

根据Using Swift with Objective-C book , 以下所有类型都自动桥接到 NSNumber:

  • 整数
  • UInt
  • float
  • bool

关于swift - NSNumberFormatter stringFromNumber 应该能够接受 Swift.Int 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24417824/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com