【发布时间】:2012-09-26 10:28:57
【问题描述】:
所以我有一个包含键和对象的哈希图。我想知道是否可以使用键创建多个排列。例如,如果我有:
1 - 对象 1 2 - 对象2 3 - 对象 3 4 - 对象4
获取随机顺序。所以一个结果可能是:
3 - 对象 3 1 - 对象 1 2 - 对象2 4 - 对象4
到目前为止我有:
Map<Integer, GeoPoint> mapPoints = new HashMap<Integer, GeoPoint>();
Map<Integer, GeoPoint> mapPointsShuffle = new HashMap<Integer, GeoPoint>();
for (int t =0; t < 50; t ++){
Collections.shuffle((List<?>) mapPoints);
mapPointsShuffle.putAll(mapPoints);
}
所以这个想法是给我 50 个随机排列。但它回来了:
09-26 11:15:27.813: E/AndroidRuntime(20434): java.lang.ClassCastException: java.util.HashMap 无法转换为 java.util.List
有什么想法吗?
【问题讨论】:
-
为什么需要像 java.util.HashMap 这样的关联集合中的随机排列?
-
mapPoints是 Map 接口的一个实现。您不能将其转换为 List 接口!