如何在 ios Swift 5 中使用多个欧元值总数组 Like ["£179.95", "£199.95", "£89.95"]
How To multiple Euro values total arrays in ios Swift 5 Like ["£179.95", "£199.95", "£89.95"]
array = ["£179.95", "£199.95", "£89.95"]
如何将此值相加得到 ios 中的总值 swift 4.
请帮帮我
如果您确定数组中包含的字符串始终以 £
开头,您可以这样做:
let sum = array.compactMap { Double([=10=].replacingOccurrences(of: "£", with: "")) }
.reduce(0.0, { [=10=] + })
示例:
let array = ["£179.95", "£199.95", "£89.95"]
let sum = array.compactMap { Double([=11=].replacingOccurrences(of: "£", with: "")) }
.reduce(0.0, { [=11=] + })
print(sum) // 469.84999999999997
您可以通过使用 NumberFormatter
来获得灵活的解决方案
var formatter = NumberFormatter()
formatter.numberStyle = .currency
formatter.locale = Locale(identifier: "en_US_POSIX")
然后通过设置适当的货币代码计算总和
formatter.currencyCode = "GBP"
let sum = array.compactMap { formatter.number(from: [=11=])?.doubleValue}.reduce(0.0, +)
所以只需根据需要更改 currencyCode
属性 或使用 currencySymbol
属性 代替
let euroValues = ["€10.4", "€5.67"]
formatter.currencySymbol = "€"
let euroSum = euroValues.compactMap { formatter.number(from: [=12=])?.doubleValue}.reduce(0.0, +)
array = ["£179.95", "£199.95", "£89.95"]
如何将此值相加得到 ios 中的总值 swift 4.
请帮帮我
如果您确定数组中包含的字符串始终以 £
开头,您可以这样做:
let sum = array.compactMap { Double([=10=].replacingOccurrences(of: "£", with: "")) }
.reduce(0.0, { [=10=] + })
示例:
let array = ["£179.95", "£199.95", "£89.95"]
let sum = array.compactMap { Double([=11=].replacingOccurrences(of: "£", with: "")) }
.reduce(0.0, { [=11=] + })
print(sum) // 469.84999999999997
您可以通过使用 NumberFormatter
var formatter = NumberFormatter()
formatter.numberStyle = .currency
formatter.locale = Locale(identifier: "en_US_POSIX")
然后通过设置适当的货币代码计算总和
formatter.currencyCode = "GBP"
let sum = array.compactMap { formatter.number(from: [=11=])?.doubleValue}.reduce(0.0, +)
所以只需根据需要更改 currencyCode
属性 或使用 currencySymbol
属性 代替
let euroValues = ["€10.4", "€5.67"]
formatter.currencySymbol = "€"
let euroSum = euroValues.compactMap { formatter.number(from: [=12=])?.doubleValue}.reduce(0.0, +)