有没有一种方法可以在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()
总是返回Object
s 数组,不能将其强制转换为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