我可能有一个如下所示的数组:
[1, 4, 2, 2, 6, 24, 15, 2, 60, 15, 6]
或者,实际上,任何类似数据类型的序列.我想要做的是确保每个相同的元素只有一个.例如,上面的数组将变为:
[1, 4, 2, 6, 24, 15, 60]
请注意,删除了重复的2,6和15,以确保每个相同的元素只有一个.Swift是否提供了一种轻松完成此操作的方法,或者我自己必须这样做?
场景: 一个字符串数组,很多都是重复的。
目标: 产生一个唯一的字符串数组。
作案手法: 我正在考虑将数组转换为一组变得唯一的字符串;从中生成一个新的唯一字符串数组。
问题:如何将 Swift 数组转换为 Swift Set?
我正在建立一个项目,告诉我一段文本中的独特单词。
我有我的原始字符串scriptTextView,已将每个单词添加到数组scriptEachWordInArray
我现在想创建一个名为scriptUniqueWords的数组,该数组仅包含在scriptEachWordInArray中出现一次的单词(换句话说,是唯一的)
因此,我希望我的scriptUniqueWords数组等于= [“ Silent”,“ Holy”]。
我不想创建一个没有重复项的数组,而是创建一个仅具有第一次出现一次值的数组。
var scriptTextView = "Silent Night Holy Night"
var scriptEachWordInArray = ["Silent", "night", "Holy", "night"]
var scriptUniqueWords = [String]()
for i in 0..<scriptEachWordInArray.count {
if scriptTextView.components(separatedBy: "\(scriptEachWordInArray[i]) ").count == 1 {
scriptUniqueWords.append(scriptEachWordInArray[i])
print("Unique word \(scriptEachWordInArray[i])")}
}
Run Code Online (Sandbox Code Playgroud) 我想对数组排序
像这样:
let elements = ["S","A","C","C","T","E","E","E","F","S","S","A","A","C"]
Run Code Online (Sandbox Code Playgroud)
我尝试这样做
var currentElement = ""
var newElements:[String] = []
for element in elements {
if currentElement != element{
currentElement = element
newElements.append(element)
}
}
Run Code Online (Sandbox Code Playgroud)
但 print["S", "A", "C", "T", "E", "F", "S", "A", "C"]
如何分类到 ["A","C","E","F","S","T"]