Как преобразовать операцию нарезки Python в код Java - PullRequest
0 голосов
/ 19 мая 2010

У меня есть эта строка кода:

x и k являются int.
lm это массив

lz=[f(x,lm[:j]+lm[j+1:],k) for j in range(n)]

Мой вопрос:

Я хочу преобразовать приведенную выше строку в Java ...

Я создал массив lm на Java, но я думаю сделать его массивом, чтобы избежать проблемы длины массива.

Я знаю, что для примера lm это [1, 4, 1, 9]. Тогда список вывода будет:

[4, 1, 9],[1, 1, 9],[1, 4, 9],[1 ,4,1]

Но я немного озадачен тем, как реализовать его в Java ...
Любая помощь приветствуется ..

Спасибо

1 Ответ

0 голосов
/ 19 мая 2010

Это тебе поможет?

  int[] lm = new int[] {1, 4, 1, 9};
    for (int i = 0; i < lm.length; i++) {
        int[] tmp = new int[lm.length - 1];
        System.arraycopy(lm, 0, tmp, 0, i);
        System.arraycopy(lm, i + 1, tmp, i, lm.length - i - 1);

        System.out.println("tmp = " + Arrays.toString(tmp));
     }

Это, конечно, не использует f (), так как у меня нет возможности узнать, что он на самом деле делает.

...