gpt4 book ai didi

java - 将二维数组索引转换为一维索引

转载 作者:太空狗 更新时间:2023-10-29 22:59:14 25 4
gpt4 key购买 nike

我有两个数组用于我正在用 java 编写的国际象棋变体...到目前为止,我有一个控制台版本,它将棋盘表示为一维数组(大小为 32),但我正在为它制作一个 GUI 并且我希望它显示为 4x8 网格,所以我有一个 JPanel 的二维数组...

问题是,是否有任何公式可以将 array[i][j] 索引转换为 array[i],因为它是一个 4x8 数组?

最佳答案

这样想:

您有一个恰好是一维数组的数组,实际上,它只是二维数组项的长串联。

假设您有一个大小为 5 x 3(5 行,3 列)的二维数组。我们想制作一个一维数组。您需要决定是按行连接还是按列连接,在本例中我们假设连接是按行连接的。因此,每行有 3 列长,因此您需要将一维数组视为以 3 的“步长”定义。因此,一维数组的长度为 5 x 3 = 15,现在您需要找到接入点。

因此,假设您正在访问二维数组的第 2 行和第 2 列,那么最终将是 3 步(第一行)+ 第二行中的步数,或 3 + 2 = 5 . 由于我们是从零开始的索引,即 -1,所以索引为 4。

现在进行具体的表述:

int oneDindex = (row * length_of_row) + column; // Indexes

因此,作为上述示例,您最终会拥有

oneDindex = (1 * 3) + 1

应该是这样

关于java - 将二维数组索引转换为一维索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1730961/

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