GKRandomSource

来源:互联网 发布:2016年制造业数据 编辑:程序博客网 时间:2024/06/11 23:16

GKRandomSource

所有随机化类的基类。

概括

重要

GameplayKit中提供的随机化服务适用于可靠地创建确定性的伪随机游戏机制,但不具备加密性。对于加密,混淆或密码使用,请使用描述“加密指南”的Security框架。

在大部分情况下,不应该直接使用此类,而是使用其底下的子类之一。一个随机源对于自己生成的随机数范围和分布几乎是无法控制的,如果想要指定这些选项,请将随机源和GKRandomDistribution类结合使用。

当你创建GKRandomSource或其子类的实例时,生成的随机源是独立性且确定性的,也就是说,一个实例生成的数字序列对另一个实例生成的序列没有影响,且这个数字序列在必要时还能进行复制。有关复制序列的详细信息,请参阅每个随机源类。

你选择的随机源类决定了用于随机数生成的算法:
• GKARC4RandomSource类使用类似于arc4random系列C函数中使用的算法。(但是,此类的实例与对arc4random函数的调用无关。)

• GKLinearCongruentialRandomSource类使用比GKARC4RandomSource类更快,但更少随机的算法。(具体来说,生成低位数字比高位数字重复出现的频率更高。)当性能比不可预测性更重要时,请使用此源。

• GKMersenneTwisterRandomSource类使用比GKARC4RandomSource类更慢,但更随机的算法。当使用随机数字不重复和性能不太重要时,请使用此源。

Topics

创建独立随机源(Creating an Independent Random Source)

- init

创建随机源。

数组的随机洗牌(Randomly Shuffling an Array)

- arrayByShufflingObjectsInArray:

返回一个数组,其内容与指定数组的数组相同,但是以随机源确定的随机顺序。

使用一个全局随机源(Using a Shared Random Source)

+ sharedRandom

返回一个全局实例,共享一个全局的系统随机源。

初始化(Initializers)

- initWithCoder:

关系

继承

NSObject

默认遵守

GKRandom, NSCopying, NSSecureCoding


原创粉丝点击