You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Groovy脚本从键值对中获取随机值

获取Groovy Map中的随机值

以下是几种从你的Map中获取随机值的实用方法:

方法1:通过值列表+随机索引

先将Map的所有值转换为List,再利用随机数生成索引来获取元素:

def mp = [ 'QLD': 'Brisbane','NSW': 'Sydney','NT': 'Darwin']
def valueList = mp.values().toList()
def randomValue = valueList[new Random().nextInt(valueList.size())]
// 输出随机值
println randomValue

方法2:利用Groovy内置的shuffle方法

Groovy集合支持shuffle()方法打乱元素顺序,再取第一个元素即可:

def mp = [ 'QLD': 'Brisbane','NSW': 'Sydney','NT': 'Darwin']
def randomValue = mp.values().shuffle().first()
println randomValue

或者用take(1)配合索引获取,效果一致:

def randomValue = mp.values().shuffle().take(1)[0]

方法3:先随机取键再取值

也可以先随机获取一个键,再通过键拿到对应的值:

def mp = [ 'QLD': 'Brisbane','NSW': 'Sydney','NT': 'Darwin']
def keyList = mp.keySet().toList()
def randomKey = keyList[new Random().nextInt(keyList.size())]
def randomValue = mp.get(randomKey)
println randomValue

内容的提问来源于stack exchange,提问作者Kumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 13:01:55