使用 Money 库进行货币转换的实用工具。
此功能在 Flight School Guide to Swift Numbers 的第 3 章中进行了讨论。
将 CurrencyConverter 包添加到 Package.swift
中的目标依赖项。
import PackageDescription
let package = Package(
name: "YourProject",
dependencies: [
.package(
url: "https://github.com/Flight-School/CurrencyConverter",
from: "1.0.0"
),
]
)
然后运行 swift build
命令来构建您的项目。
要使用 Carthage 在您的 Xcode 项目中使用 CurrencyConverter
,请在 Cartfile
中指定它。
github "Flight-School/CurrencyConverter" ~> 1.0.0
然后运行 carthage update
命令来构建 framework,并将构建的 CurrencyConverter.framework 拖到您的 Xcode 项目中。
货币对 描述了一种货币相对于另一种货币的价值。 您可以使用指定的汇率创建一个 CurrencyPair
对象,以将一种货币的金额转换为另一种货币的金额。
let EURtoUSD = CurrencyPair<EUR, USD>(rate: 1.17) // as of June 1st, 2018
let euros: Money<EUR> = 123.45
let dollars = EURtoUSD.convert(euros).rounded // "$144.44"
注意:此库不包含查询当前货币汇率的功能。 您可以从各种第三方 Web 应用程序获取此信息。
要仅允许单向转换,请创建一个符合 UnidirectionalCurrencyConverter
协议的类型。 如果您想根据转换方向提供不同的汇率(即,从可变到固定的汇率与反向转换的汇率不同),请创建一个符合 BidirectionalCurrencyConverter
协议的类型。
MIT
Mattt (@mattt)