gpt4 book ai didi

ios - 表达式中的 NSExpression 自定义变量

转载 作者:可可西里 更新时间:2023-11-01 00:37:34 26 4
gpt4 key购买 nike

最近我发现了 NSExpression 类,我想知道是否有可能在表达式中评估自定义变量。

像这样:

5+4+MYVAR*5

我想用自定义 Double 值替换此 MYVAR 字符串。

如果这不存在,我将使用循环和类似的方法,但希望有一个内置(和更快)的解决方案。

谢谢。

最佳答案

let myInt = 4
let myFormulaInt = "5 + 4 + myInt * 5"
let intElements = ["myInt": myInt]

let myResultInt = NSExpression(format: myFormulaInt).expressionValueWithObject(intElements, context: nil).integerValue

println(myResultInt) // 29


let myDouble = 2.5
let myFormulaDouble = "5 + 4 + myDouble * 5"
let doubleElements = ["myDouble": myDouble]

let myResultDouble = NSExpression(format: myFormulaDouble).expressionValueWithObject(doubleElements, context: nil).doubleValue

println(myResultDouble) // 21.5

Xcode 8 GM • Swift 3

let myInt = 4
let myFormulaInt = "5 + 4 + myInt * 5"
let intElements: [String:Int] = ["myInt": myInt]

let myResultInt = NSExpression(format: myFormulaInt).expressionValue(with: intElements, context: nil) as! Int

print(myResultInt) // 29


let myDouble = 2.5
let myFormulaDouble = "5 + 4 + myDouble * 5"
let doubleElements: [String: Double] = ["myDouble": myDouble]

let myResultDouble = NSExpression(format: myFormulaDouble).expressionValue(with: doubleElements, context: nil) as! Double

print(myResultDouble) // 21.5

关于ios - 表达式中的 NSExpression 自定义变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30855364/

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