java中如何对角循环二维数组

java中如何对角循环二维数组,java,loops,multidimensional-array,Java,Loops,Multidimensional Array,我需要在一个2D Java数组中沿对角线双向循环(前面和后面)。我一直在寻找一个代码,可以帮助我做到这一点,但我一直未能找到。例如,如果我有 A B C D E E F G H I J K L M N 我需要一个代码来循环这个数组并找到所有可能的对角线,即AFL、EK、J CHN、EHL、DGK等 int offsetX = ...; int offsetY = ...; Object[] matrix = ...; for (int i = 0; i + Math.max(offse

我需要在一个2D Java数组中沿对角线双向循环(前面和后面)。我一直在寻找一个代码,可以帮助我做到这一点,但我一直未能找到。例如,如果我有

A B C D E 
E F G H I 
J K L M N 

我需要一个代码来循环这个数组并找到所有可能的对角线,即AFL、EK、J CHN、EHL、DGK等

int offsetX = ...;
int offsetY = ...;
Object[] matrix = ...;

for (int i = 0; i + Math.max(offsetX, offsetY) < Math.min(matrix.length, matrix[0].length); ++i)
{
    Object o = matrix[offsetY + i][offsetX + i];
}
intoffsetx=。。。;
int offsetY=。。。;
对象[]矩阵=。。。;
对于(int i=0;i+Math.max(offsetX,offsetY)
通常,在您的情况下,这两个偏移中只有一个可以为非零。
翻转som符号并修改边界检查以创建其他对角线。

您将如何手动执行此操作?用代码实现它。(我也会期待JBGM,不管它值多少钱。)你一直在“寻找代码”。你试过“写代码”吗?我会看看这个,soonI最后用数组左右移动得到它。无论如何谢谢你的帮助