当前位置: 首页 > 面试题库 >

如何使用Swift显示数组的唯一元素?

翁俊良
2023-03-14
问题内容

我有一个公式重新调整数组作为示例var Array = [a,s,d,s,f,g,g,h,e]。我想要的是运行一个for循环或其他可以让我回来的选项a,s,d,f,g,h,e-仅提供唯一值。如何使用ios
Swift执行此操作?


问题答案:

只需使用一组:

let set: Set = ["a", "s", "d", "s", "f", "g" , "g", "h", "e"]
print(set) // ["a", "s", "f", "g", "e", "d", "h"]

如果您关心订单:

使用此扩展名,该扩展名使您可以Sequence在保留顺序的同时删除any的重复元素:

extension Sequence where Iterator.Element: Hashable {
    func unique() -> [Iterator.Element] {
        var alreadyAdded = Set<Iterator.Element>()
        return self.filter { alreadyAdded.insert($0).inserted }
    }
}

let array = ["a", "s", "d", "s", "f", "g" , "g", "h", "e"]
let result = array.unique()
print(result) // ["a", "s", "d", "f", "g", "h", "e"]


 类似资料:
  • 问题内容: 我有这样的JSON字符串 此JSON数组中有重复的值..我怎样才能使该JSON数组像这样唯一 我在寻找使用较少迭代的建议, 在这种情况下不起作用。 欢迎使用任何第三方库的建议。 问题答案: 在以下SO问题中检查解决方案: 使用jQuery从JSON数组获取唯一结果 您必须遍历数组并创建一个包含唯一值的新数组。

  • 问题内容: 我有一个多维数组设置,如下所示: 在该区域中搜索“名称”中的重复值并将其删除以使多维数组中的每个值都是唯一的最佳方法是什么? 提前致谢! 问题答案: 由于每个人都提供了替代方案,因此这里是解决当前问题的方法。有时,我们必须使用已有的数据,而不必按照自己喜欢的方式进行重新排列。话虽如此,这将从阵列中删除所有重复的后续条目。 看起来像这样:

  • 问题内容: 我有一个要显示在项目中的.svg图像文件。 我尝试使用UIImageView,它适用于.png和.jpg图像格式,但不适用于.svg扩展名。有什么办法可以使用UIWebView或UIImageView显示.svg图像? 问题答案: 试试这个代码

  • 给定一个int数组和所需的数组大小,应该返回一个包含所有可能唯一数组的数组。初始数组中的所有整数都应该是唯一的。如果在另一个数组中找不到其所有成员,则认为该数组是唯一的。

  • 问题内容: 在最近的一次采访中有人问我这个问题。 您将获得一个包含一百万个元素的数组。除了一个元素外,所有元素都是重复的。我的任务是找到独特的元素。 我的做法是要经过在整个数组循环,然后创建一个索引作为数组中和的数组中出现的次数。然后再次遍历我们的地图,并返回值为1的索引。 我说我的方法会花费时间。面试官告诉我要以低于复杂度的方式对其进行优化。我说过,我们不能,因为我们必须遍历具有一百万个元素的整

  • 本文向大家介绍Swift使用map(_ :)转换数组的元素,包括了Swift使用map(_ :)转换数组的元素的使用技巧和注意事项,需要的朋友参考一下 示例 如Array符合SequenceType,我们可以使用map(_:)转化的阵列A到阵列B使用类型的封闭(A) throws -> B。 例如,我们可以使用它将Ints数组转换为s数组,String如下所示: map(_:)将遍历数组,将给定的