Java 多维数组排序

标签 java arrays sorting

我完全不知道如何解决这个问题,但我正在使用 Java 中的 AI 寻路系统的数组,并且需要对值进行排序。这是我生成的数组:

int[][] paths = new int[Settings.GAME_COLS][Settings.GAME_ROWS]; // Just creating an Array that has room for every tile in the Game, so the Array can be used like this: paths[x][y]
int tempF = 0;

tempF = Math.abs(14 + (((aiX + 1) - playerX) + ((aiY - 1) - playerY)));
paths[aiX + 1][aiY - 1] = tempF;
tempF = Math.abs(14 + (((aiX + 1) - playerX) + ((aiY + 1) - playerY)));
paths[aiX + 1][aiY + 1] = tempF;
tempF = Math.abs(14 + (((aiX - 1) - playerX) + ((aiY + 1) - playerY)));
paths[aiX - 1][aiY + 1] = tempF;
tempF = Math.abs(14 + (((aiX - 1) - playerX) + ((aiY - 1) - playerY)));
paths[aiX - 1][aiY - 1] = tempF;
tempF = Math.abs(10 + (((aiX + 1) - playerX) + (aiY - playerY)));
paths[aiX + 1][aiY    ] = tempF;
tempF = Math.abs(10 + (((aiX - 1) - playerX) + (aiY - playerY)));
paths[aiX - 1][aiY    ] = tempF;
tempF = Math.abs(10 + ((aiX - playerX) + ((aiY + 1) - playerY)));
paths[aiX    ][aiY + 1] = tempF;
tempF = Math.abs(10 + ((aiX - playerX) + ((aiY - 1) - playerY)));
paths[aiX    ][aiY - 1] = tempF;

这一切都可以完美地查找并生成包含所需信息的数组,但我需要根据添加到数组中的“tempF”值对数组进行排序。有没有简单的方法可以做到这一点?

最佳答案

多维数组只不过是一组数组,因此您可以使用常规 Arrays.sort方法将就地对数组数组进行排序。

关于Java 多维数组排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12269313/

相关文章:

java - 如何按价格和名称对商品进行排序?

python - "Unsorting"快速排序

java - 排序 List<Object> 以日期为字符串类型的日期为准

java - 使用 Java 从 MP3/OGG​​ 中提取元数据

java - Jacksonparser解析器问题: Can not deserialize instance of <OBJECT> out of START_ARRAY token

java - 是否可以在不遵循继承链的Java类中给出@AfterXXX TestNG注释?

algorithm - F# 中最优雅的冒泡排序方式是什么?

java - 获取有关输入类型的信息( main args )

java - 如何验证二维数组/网格是否为 n^2*n^2

php - 从 POST 获取复选框数组值