randomByWeight

fun <T> randomByWeight(weightMap: Map<Int, T>): T

根据权重Map随机选择一个值

Return

随机选中的值

Parameters

weightMap

权重映射,key为权重,value为对应的选项

Throws

当权重Map为空或权重总和为0时抛出


fun <T> randomByWeight(weightList: List<Pair<Int, T>>): T

根据权重列表随机选择一个值

Return

随机选中的值

Parameters

weightList

权重列表,每个元素为 (权重, 值)

Throws

当列表为空或权重总和为0时抛出


fun <T> randomByWeight(items: List<T>, weightSelector: (T) -> Int): T

根据权重列表随机选择一个元素

Return

随机选中的元素

Parameters

items

权重项列表

weightSelector

权重选择器函数,用于从每个元素中提取权重值

Throws

当列表为空或权重总和为0时抛出