列表拓展

字段

方法

List#first()

调用该方法将会返回列表的第一个元素。

List#last()

调用该方法将会返回列表的最后一个元素。

List#choice(n=1, weights)

调用该方法将会重复地从列表中随机取出n个元素,如果给定了第二个参数即权值列表,将会按照权重随机。

参数名
类型
描述
可空
默认值

数量 n

数值

用于指明需要随机的元素个数

1

权值列表 weights

列表

用于给定随机元素的权重列表

null

注意:该随机方法返回的值仍旧是一个列表,即便只有一个元素的列表,也是列表,所以如果只需要取出一个,请使用 list[0] 或 first() 取出。

示例如下:

data:
  quality: '
    ["物理攻击", "物理防御", "魔法攻击", "魔法防御"].choice(1, [100, 50, 25, 10]).fist()
  '

上述配置将会按照物理攻击(100),物理防御(50),魔法攻击(25),魔法防御(10)的概率随机出一个属性名。

List#sample(n=1, weights)

调用该方法将会不重复地随机的从列表中取出n个元素,如果给定了第二个参数即权值列表,将会按照权重随机。

参数名
类型
描述
可空
默认值

数量 n

数值

用于指明需要随机的元素个数

1

权值列表 weights

列表

用于给定随机元素的权重列表

null

注意:该随机方法返回的值仍旧是一个列表,即便只有一个元素的列表,也是列表,所以如果只需要取出一个,请使用 list[0] 取出。

示例如下:

data:
  quality: '
    ["普通", "精良", "史诗", "传说"].sample(1, [100, 50, 25, 10])[0]
  '

上述配置将会按照普通(100),精良(50),史诗(25),传说(10)的概率随机出一个属性名。

List#shuffle

调用该方法将会返回一个随机打乱后的数组

注意:该方法不会影响原数组

Last updated