在映射到具有选定分隔符的字符串的数组中使用 'init' 不明确
Ambiguous use of 'init' in Array mapped to String with chosen separators
正如@vadian 所建议的,我正在从 Paul Hudson 的 100 天 SwiftUI 中学习 Xcode 以更好地理解基础知识(尽管我仍在努力争取时间来交付工作 GitHub 存储库搜索 -不,这不是我现在从事的工作)。
我正在学习关于数组的课程,现在是非常基础的东西,我很难将数组中的字符串映射到已排序的数组上。我不明白为什么,但我明白了:
Ambiguous use of 'init'
错误。
代码如下:
let cities = ["London", "Tokyo", "Rome", "Budapest"]
print(cities.sorted())
let citiesSorted = cities.sorted()
let citiesSortedString = citiesSorted.map(String.init).joined(separator:", ")
这真的很奇怪,因为我之前在同一个游乐场中取出了类似的东西,但没有使用排序的数组:
var schoolScoresString = schoolScores.map(String.init).joined(separator:", ")
print(schoolScoresString)
是的,我尝试将 let 更改为 var。没用。
cities
已经是 [String]
类型,因此您将 String
传递给 String.init
,这显然是行不通的。如果要将 String
的数组合并为单个 String
,请删除 map
并在数组上调用 joined
。
let citiesSortedString = citiesSorted.joined(separator:", ")
正如@vadian 所建议的,我正在从 Paul Hudson 的 100 天 SwiftUI 中学习 Xcode 以更好地理解基础知识(尽管我仍在努力争取时间来交付工作 GitHub 存储库搜索 -不,这不是我现在从事的工作)。
我正在学习关于数组的课程,现在是非常基础的东西,我很难将数组中的字符串映射到已排序的数组上。我不明白为什么,但我明白了:
Ambiguous use of 'init'
错误。
代码如下:
let cities = ["London", "Tokyo", "Rome", "Budapest"]
print(cities.sorted())
let citiesSorted = cities.sorted()
let citiesSortedString = citiesSorted.map(String.init).joined(separator:", ")
这真的很奇怪,因为我之前在同一个游乐场中取出了类似的东西,但没有使用排序的数组:
var schoolScoresString = schoolScores.map(String.init).joined(separator:", ")
print(schoolScoresString)
是的,我尝试将 let 更改为 var。没用。
cities
已经是 [String]
类型,因此您将 String
传递给 String.init
,这显然是行不通的。如果要将 String
的数组合并为单个 String
,请删除 map
并在数组上调用 joined
。
let citiesSortedString = citiesSorted.joined(separator:", ")