我有一个数组
allIDs = ["1", "2", "2", "3", "4", "4"]
我使用
制作了独特的内容sortedIDs = Array(Set(allIDs))
现在我想删除allIDs数组中的唯一字符串,这样所有剩下的都是重复的。
for item in sortedIDs {
while allIDs.contains(item) {
if let itemToRemoveIndex = allIDs.index(of: item) {
allIDs.remove(at: itemToRemoveIndex)
print(allIDs)
}
}
}
这给了我一个空的allIDs数组。我很难过应该循环四次的for循环循环六次并删除所有项目。 感谢。
答案 0 :(得分:0)
我假设你想要的结果是["2", "4"]
;从原始数组中删除的重复数组,以获取sortedIDs
数组。
您的问题是循环的while
循环,直到从allIDs
删除了所有项目副本。如果您只是为sortedIDs
中的每个项目执行1次移除,您将获得所需的结果:
for item in sortedIDs {
if let itemToRemoveIndex = allIDs.index(of: item) {
allIDs.remove(at: itemToRemoveIndex)
print(allIDs)
}
}