用java实现类似于cobol1:1 match处理

请问用java实现cobol 1:1 match处理怎么实现
两个list A和B同时循环
要求判断两个list同为第N件的key a1=b1时,处理继续A list的i++; B list的j++两个list继续循环
如果a1 < b1时,i++, j不变, 用a2和b1继续判断
如果a1 >b1时,i不变,j++,用a1和b2继续判断
如果A list循环完了,但是B list 还没有循环完,出log
如果A list没有循环完,但是B list已经循环完了也出log
有好的实现方式吗

不知道你说的要输出的log是什么内容,写了一种思路,不知道是不是你想要的。

public class Test {
    public static void cobol(int[] A, int[] B) {
        int i = 0;
        int j = 0;
        while (i < A.length && j < B.length) {
            int tempA = A[i];
            int tempB = B[j];
            if (tempA == tempB) { //a1=b1时,处理继续A list的i++; B list的j++两个list继续循环
                i++;
                j++;
            } else if (tempA < tempB) { //a1 < b1时,i++, j不变, 用a2和b1继续判断
                i++;
            } else { //a1 >b1时,i不变,j++,用a1和b2继续判断
                j++;
            }
        }
        if (i >= A.length) {
            System.out.println("列表A循环完了,i=" + i + ",j=" + j);
        } else {
            System.out.println("列表B循环完了,i=" + i + ",j=" + j);
        }
    }

    public static void main(String[] args) {
        int[] A = new int[]{1, 2, 3, 4, 5};
        int[] B = new int[]{6};
        cobol(A, B);
    }
}

输入:

int[] A = new int[]{1, 2, 3, 4, 5};
int[] B = new int[]{6};

输出:

列表A循环完了,i=5,j=0

楼上这种方式就可以实现

循环,单独定义两个list的下标,循环里面去判断list下标是否++