【发布时间】:2011-12-05 19:42:42
【问题描述】:
我对 Java 并不陌生,虽然我之前从未真正使用过 Sets,
所以有人可以帮我吗?
我遇到以下问题; 但首先,这是我的代码:
HashMap<Position[], String> save = io.getSave();
Position[][] saved_pos = (Position[][]) save.keySet().toArray();
虽然在第二行,Java 抛出了ClassCastException,但为什么呢?
显然,save.keySet().toArray() 返回的数组确实包含Position[][]s,尽管不幸的是,Set 类中的toArray() 只返回一个Object[] 数组。
那我能做什么,我需要施放这个。
【问题讨论】:
-
我很想知道你为什么使用位置有你的钥匙。 Aka 你为什么在
HashMap<Position[], String>而不是HashMap<String, Position[]>? -
二维数组Position[][]是什么意思?
-
@hovanessyan:表示元素类型为
Position[]的数组。 (换句话说,一个“锯齿状数组”。)
标签: java class exception casting