我製作平鋪內存遊戲。我想在活動開始時用圖片初始化瓷磚。我嘗試這樣做:HashMap值問題()
private void initTiles() {
// Store name of resources in array
String[] pictures = new String[] {"tile_circle", "tile_deny", "tile_heart"
, "tile_mail", "tile_music", "tile_pin", "tile_splash", "tile_yes"};
Random rand = new Random();
int i = 1;
while(i <= 16) {
String pic = pictures[rand.nextInt(8)];
LinkedList<String> list = new LinkedList<String>();
list = (LinkedList<String>) tilesMapping.values();
//Check if this picture is already loaded twice
if(list.indexOf(pic) == -1) {
tilesMapping.put(Integer.valueOf(i), pic);
i++;
} else if(list.lastIndexOf(pic) == -1) {
tilesMapping.put(Integer.valueOf(i), pic);
i++;
} else if(list.indexOf(pic) == list.lastIndexOf(pic)) {
tilesMapping.put(Integer.valueOf(i), pic);
i++;
}
}
}
但是當我開始遊戲時,我收到強制關閉。但是當評論這一行list = (LinkedList<String>) tilesMapping.values();
遊戲開始。
它的工作原理!非常感謝 :) – 2011-04-24 10:12:54