gpt4 book ai didi

Java SE 窗口显示 "Not Responing"。我的 try/catch 有问题吗?

转载 作者:行者123 更新时间:2023-12-02 04:34:06 25 4
gpt4 key购买 nike

我在尝试写入文件时遇到问题。它是塔防游戏中的关卡编辑器。每次我单击“S”保存时,它都会卡住,当我单击显示屏时,它说没有响应,然后我必须使用任务管理器手动将其关闭。

package helpers;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;

import data.Tile;
import data.TileGrid;

public class Leveler {

public static void saveMap(String mapName, TileGrid grid) {
String mapData = "";
for (int i = 0; i < grid.getTilesWide(); i++) {
for (int j = 0; i < grid.getTilesHigh(); j++) {
mapData += getTileID(grid.GetTile(i, j));
}
}

//Trying to save a game map to a text file
try{
File file = new File(mapName);
BufferedWriter bw = new BufferedWriter(new FileWriter(file));
bw.write(mapData);
bw.close();
}catch(Exception e){
e.printStackTrace();
}
}

public static String getTileID(Tile t) {
String ID = "e";
switch (t.getType()) {
case Grass:
ID = "0";
break;
case Dirt:
ID = "1";
break;
case Water:
ID = "2";
break;
case Stone:
ID = "3";
break;
case NULL:
ID = "4";
break;
}
return ID;
}
}

Code by XXCODE_MAN94XX .

最佳答案

这条线看起来可疑地像一个无限循环:

public static void saveMap(String mapName, TileGrid grid) {
String mapData = "";
for (int i = 0; i < grid.getTilesWide(); i++) {
for (int j = 0; i < grid.getTilesHigh(); j++) { <-- Don't you mean "j"?
mapData += getTileID(grid.GetTile(i, j));
}
}

关于Java SE 窗口显示 "Not Responing"。我的 try/catch 有问题吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31056792/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com