我想從linkedhashset中檢索隨機元素。下面是我的代碼,但每次都會給我例外。java.lang.ClassCastException:[Ljava.lang.Object;與[Ljava.lang.String;不兼容
private static void generateRandomUserId(Set<String> userIdsSet) {
Random rand = new Random(System.currentTimeMillis());
String[] setArray = (String[]) userIdsSet.toArray();
for (int i = 0; i < 10; ++i) {
System.out.println(setArray[rand.nextInt(userIdsSet.size())]);
}
}
下面是個例外,我getting-
java.lang.ClassCastException: [Ljava.lang.Object; incompatible with [Ljava.lang.String;
誰能幫我這個?有沒有更好的方法來做到這一點?
你應該使用'userIdsSet.toArray(new String [])'轉換你的數組來生成一個String數組。否則,您正在使用的方法將生成一個Object數組。 –