有没有一种方法可以在Java中随机获取HashMap的值?

有没有一种方法可以在Java中随机获取HashMap的值?

回答:

这有效:

Random generator = new Random();

Object[] values = myHashMap.values().toArray();

Object randomValue = values[generator.nextInt(values.length)];

如果您希望随机值不是类型,Object只需在最后一行添加强制类型转换即可。因此,如果myHashMap声明为:

Map<Integer,String> myHashMap = new HashMap<Integer,String>();

最后一行可以是:

String randomValue = (String) values[generator.nextInt(value.length)];


下面的代码 ,Set.toArray()总是返回Objects 数组,不能将其强制转换为Map.Entry

Random generator = new Random();

Map.Entry[] entries = myHashMap.entrySet().toArray();

randomValue = entries[generator.nextInt(entries.length)].getValue();

以上是 有没有一种方法可以在Java中随机获取HashMap的值? 的全部内容, 来源链接: utcz.com/qa/433346.html

回到顶部