小编eri*_*nas的帖子

通过负指数存储值

我实际上正在为我的无限大小世界地图制作一个块系统,我才意识到我将使用负数 xy坐标.

所以,我的问题是什么是存储由xAND 索引的无限数量的块对象的最佳解决方案y.

到目前为止我使用的是:

ArrayList<ArrayList<Chunk>> chunks = new ArrayList<ArrayList<Chunk>>();
//...
chunk = chunks.get(x).get(y);
version = chunks.get(x).get(y).getVersion();
Run Code Online (Sandbox Code Playgroud)

但是当负面指数出现时,整个概念就失败了.

java

1
推荐指数
1
解决办法
506
查看次数

虽然条件为假,但循环仍在继续运行

好的,我在这里修复这个bug有点困难,所以在我再花一天时间搜索之前,我会问你们.

//Core Class
static String serverAnswer = "";

public static void sendMessage(String msg){
    serverAnswer = "";
    Connection.send(msg);
    while(serverAnswer.equals(""));     <infinity loop
}

//Connection Thread
public void run() {
    while(running){
        try {
            msg = (String)in.readObject();
            Core.serverAnswer = msg;
        } catch (StreamCorruptedException e){
            e.printStackTrace();
        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

实际上线程应该等到服务器响应然后设置答案

所以循环应该停止,但我不会停止...

我检查了以下内容:

  • 线程正在运行:是的
  • 问题肯定是无休止的循环
  • Core.serverAnswer 肯定从服务器获取一个字符串.

那么有什么关于while()我不知道的或任何想法问题可能在哪里?

java

0
推荐指数
1
解决办法
105
查看次数

标签 统计

java ×2