math函数在Swift中
我一直在阅读文档,但似乎无法find答案。
如何使用sqrt()
, floor()
, round()
, sin()
等math函数?
正如其他指出,你有几个选项。 如果你只想要math函数。 你只能导入达尔文。
import Darwin
如果你想要mathfunction和其他标准的类和function。 你可以导入基金会。
import Foundation
如果你想要的一切,还有用户界面的类,这取决于如果你的操场是OS X或iOS。
对于OS X,您需要导入Cocoa。
import Cocoa
对于iOS,您需要导入UIKit。
import UIKit
您可以通过打开File Inspector(⌥⌘1)轻松发现您的游乐场平台。
达尔文就够完美了。 不需要导入整个Cocoa框架。
import Darwin
当然,如果你需要Cocoa或者Foundation或者其他更高级的框架的元素,你可以导入它们
对于在Linux上使用swift [2.2]的人,即Ubuntu,导入是不同的!
正确的方法是使用Glibc。 这是因为在OS X和iOS上,基本的类似于Unix的API在Darwin中,而在Linux中,它们位于Glibc中。 导入基金会在这里不会帮助你,因为它不能自行区分。 要做到这一点,你必须明确地导入它自己:
#if os(OSX) || os(iOS) import Darwin #elseif os(Linux) import Glibc #endif
您可以按照这里的基础框架的发展了解更多
你可以直接使用它们:
var square = 9.4 var floored = floor(square) var root = sqrt(floored) println("Starting with \(square), we rounded down to \(floored), then took the square root to end up with \(root)")
要使用math函数,您必须import Cocoa
您可以通过以下方式查看其他定义的math函数。 进行Cmd – 点击函数名称sqrt
然后用所有其他全局math函数和常量input文件。
文件的一小段
... func pow(_: CDouble, _: CDouble) -> CDouble func sqrtf(_: CFloat) -> CFloat func sqrt(_: CDouble) -> CDouble func erff(_: CFloat) -> CFloat ... var M_LN10: CDouble { get } /* loge(10) */ var M_PI: CDouble { get } /* pi */ var M_PI_2: CDouble { get } /* pi/2 */ var M_SQRT2: CDouble { get } /* sqrt(2) */ ...