Как сохранить этот паттерн в аррайлисте Java? - PullRequest
0 голосов
/ 11 июля 2020

Я хочу сохранить приведенный ниже шаблон массива в List, я не понимаю, как это реализовать, поскольку он имеет альтернативное приращение.

  1. Увеличить число на 399. на 1

и продолжайте два вышеуказанных шага для определенной длины чисел. Если кто-то может помочь мне в логах c с простыми концепциями ООП

0, 400, 401, 800, 801, 1200, 1201, 1600, 1601, 2000

Ответы [ 2 ]

1 голос
/ 11 июля 2020

Вы также можете сделать что-то вроде этого:

//add the first item outside of the loop, so that you can access the previous item within it
list.add(1)

//loop through the list in increments of 2
for (int i = 1; i < length; i += 2) {
   list.add(list.get(i - 1) + 399);
   list.add(list.get(i) + 1);
}
0 голосов
/ 11 июля 2020

разобрался, вот что я сейчас написал, и работает

int pages = 8;

    List<Integer> numArray = new ArrayList<Integer>();
    
    numArray.add(0);

    boolean incrementFlag = false;
    int i = 400;
    for (int j = 0; j < (pages-1); j++) {

        numArray.add(i);
        if (incrementFlag)
            i += 399;
        else
            i += 1;

        incrementFlag = !incrementFlag;

    }
...