Swift 程序 反转 Set

Swift 程序 反转 Set

在 Swift 中,Set 是一个无序的集合,只包含唯一的值。因为 Set 是无序的,所以没有像数组那样直接反转集合元素的方式。但是,您可以将 Set 转换为数组,然后应用 reversed() 方法或任何用户定义的函数来反转集合,然后将结果转换回 Set。下面通过示例来讨论这种方法。

示例1

在以下示例中,我们将具有字符串类型的集合。我们先将其转换成数组来反转元素,然后应用 reversed() 函数,再将最终结果转换回集合并显示输出结果。

import Foundation
import Glibc

var myFavcolor : Set = ["Blue", "Pink", "Yellow", "Sky blue", "Red"]

// 将 set 转换为 array
var arr = Array(myFavcolor)

// 使用 reversed() 函数反转 set 
var revArr = arr.reversed()

// 将结果转换回集合 
var resultantSet = Set(revArr)

print("Reversed Set is", resultantSet)

输出结果

Reversed Set is ["Pink", "Yellow", "Red", "Sky blue", "Blue"]

示例2

在以下示例中,我们将具有整数类型的集合。首先我们将这个 set 转换为数组使用 Array() 构造函数。然后反转数组的顺序,最后使用 Set() 构造函数将反转后的数组转换为 set 。

import Foundation
import Glibc

var myFavNum: Set<Int> = [12, 98, 34, 1, 34, 22, 67]

// 将 set 转换为 array 
var myArr = Array(myFavNum)

let sizze = myArr.count

// 反转 set 
for i in 0..<sizze/2 {
   let j = sizze - i - 1
   let t = myArr[i]
   myArr[i] = myArr[j]
   myArr[j] = t
}

// 将结果转换回集合 
let revSet = Set(myArr)

print(revSet)

输出结果

[12, 34, 98, 22, 67, 1]

结论

这就是如何反转一个 set 。在上面讨论的示例中,集合元素的顺序是任意的,因此反转 set 的顺序可能不必与原始集合相同。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

Swift 示例