gpt4 book ai didi

ios - 分子量计算器中的枚举

转载 作者:行者123 更新时间:2023-11-28 09:07:47 25 4
gpt4 key购买 nike

我正在尝试将分子量计算器作为化学应用程序的一部分。我想让它让用户在文本字段中输入文本,单击一个按钮,然后在一个单独的标签中显示结果。由于分子式是数字和字母的混合体,我很困惑如何才能做到这一点。

为了组织元素,我考虑过将它们放入一个枚举中:

enum elements: Double {

case Na = 22.99

case O = 16.01

case H = 1.00

}

var array: [(Int, String)] = [(number, element)]()

其中“数字”是化合物中的许多元素。例如,H2O 将是 var array = [(2, H), (1, O)]

然后我想我会将文本字段中的任何元素附加到数组。例如,如果是氢氧化钠 NaOH,数组将显示为:var array = [(1, Na), (1, 0), (1, H)]

然后我会做一个 for 循环来计算总值并将其加在一起并在标签中打印该值。

我遇到问题的部分是如何根据文本字段中的内容将项目附加到数组。有任何想法吗?谢谢。

最佳答案

您可以使用字符串作为枚举的原始值,但您不能将分子量存储在枚举中:

enum elements: String {
case Na = "Na"
case H = "H"
case O = "O"
}

let sodium = elements(rawValue: "Na")

println(sodium!.rawValue) // => "Na"

现在您可以在字符串和具体枚举之间进行转换。您可以使用它来制作字典以将枚举与分子量相关联:

let molecularWeights:[elements: Double] = [
.Na: 22.99,
.O: 16.01,
.H: 1.00
]

println(molecularWeights[.Na]!) // => "22.99"

关于ios - 分子量计算器中的枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30338179/

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