如何在Swift中洗牌数组?


在本文中,您将学习如何在Swift语言中洗牌数组。

在Swift中,您可以使用`shuffle()`和`shuffled()`方法来洗牌数组元素。

`shuffle()`

`shuffle()`方法就地洗牌集合的元素,因此原始数组将被修改。

`shuffled()`

如果您想创建一个数组的洗牌副本而不是修改原始数组,您可以使用`Sequence`协议中的`shuffled()`方法。

Explore our latest online courses and learn new skills at your own pace. Enroll and become a certified expert to boost your career.

以下是如何使用`shuffle()`洗牌数组元素的示例

算法

  • 步骤1 - 创建一个输入数组

  • 步骤2 - 对输入数组调用`shuffle()`函数

  • 步骤3 - 此方法修改原始数组

示例

Open Compiler
import Foundation var languages: [String] = ["PHP", "Java", "Swift", "Python", "JavaScript", "GoLang"] print("Original array = ",languages) languages.shuffle() print("Shuffle array = ",languages)

输出

Original array =  ["PHP", "Java", "Swift", "Python", "JavaScript", "GoLang"]
Shuffle array =  ["Java", "GoLang", "JavaScript", "Python", "Swift", "PHP"]

请注意,元素的顺序是随机的。

以下是如何使用`shuffled()`洗牌数组元素的示例

算法

  • 步骤1 - 创建一个输入数组

  • 步骤2 - 对输入数组调用`shuffled()`函数

  • 步骤3 - 此方法返回一个新数组

示例

Open Compiler
import Foundation var languages: [String] = ["PHP", "Java", "Swift", "Python", "JavaScript", "GoLang"] print("Original array = ",languages) let shuffledLanguages = languages.shuffled() print("Shuffle array = ",shuffledLanguages)

输出

Original array =  ["PHP", "Java", "Swift", "Python", "JavaScript", "GoLang"]
Shuffle array =  ["PHP", "GoLang", "JavaScript", "Swift", "Python", "Java"]

请注意,元素的顺序是随机的。

结论

`shuffle()`和`shuffled()`都使用Foundation框架提供的默认随机数生成器。如果您需要更多地控制随机化过程,您可以使用其他随机化方法或创建您自己的随机数生成器。

更新于:2023年9月7日

246 次查看

启动您的职业生涯

完成课程后获得认证

开始学习
广告