gpt4 book ai didi

swift - 如何从匹配的字典值中返回一个字符串?

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

我正在尝试从字典中返回一串选定值。当我遍历字典和我从中获取键的数组时,我可以打印出值,但作为不同的字符串,而不是合并。

到目前为止,我已经迭代了集合类型,并在某种程度上尝试了 map、filter 和 reduce。还尝试将结果放入数组和字典中以使用 .joined,但我总是得到 nil。

这是我从中获取值的字典:

let letterDict = ["a": "1", "b": "2", "c": "3", "d": "4"]

这是我查询的数组:

let characterArray = ["a", "b"]

这是我能够从中获得结果的代码:

func convertText(_ input: String) -> String {
var expectedText: String?

for character in characterArray {
for (key, value) in letterDict {
if key.contains(character) {
print(value)
expectedText = value
}
}
}
return expectedText ?? input
}

我试图返回 12,但我得到的是:

1
2

一直以来。即使当我尝试将它们映射到一个数组时,它也只会返回单独的数组(或字典)。当我尝试附加到数组时,它只返回 nil。

提前致谢。

最佳答案

您需要将 value 附加到 expectedText 而不是分配它。

func convertText(_ input: String) -> String {
var expectedText = ""

for character in characterArray {
for (key, value) in letterDict {
if key.contains(character) {
expectedText += value
}
}
}
return expectedText.isEmpty ? input : expectedText
}

关于swift - 如何从匹配的字典值中返回一个字符串?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57725638/

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