добавление и индексация индекса в Java - PullRequest
0 голосов
/ 27 мая 2018

Я новичок в Java и мне нужно объяснить, как это работает ... Я знаю, что это действительно просто, но я изо всех сил пытаюсь это понять!:)

  int qty[] = new int[5];

  for (int i = 0; i < qty.length; i++)

     qty[i] = i+1;

  for (int j = 0; j < 4; j++)

     qty[j+1] += qty[j];


  for (int i = 0; i < qty.length; i++)

     System.out.print(" " + qty[i]);
     System.out.println();

Почему результат 1,3,6,10,15?Я пытаюсь понять, но не могу.Как этот внутренний цикл повторяется?Как доходит до 10 и 15?

спасибо, ребята!

Ответы [ 2 ]

0 голосов
/ 27 мая 2018

Первое, что вы должны понять, это то, как код выполняется, когда в вашем коде нет фигурных скобок, то есть {и}.Непосредственная строка кода после условного оператора в вашем коде относится к выполнению цикла.Поэтому вы можете думать о своем коде так, как показано ниже.

// array to hold 5 integers are created 
int qty[] = new int[5];


for (int i = 0; i < qty.length; i++){
     qty[i] = i+1;
}
//after the above iteration, the array becomes {1,2,3,4,5}

for (int j = 0; j < 4; j++){
     qty[j+1] += qty[j];
}
//after the above iteration, the array becomes {1,3,6,10,15}

for (int i = 0; i < qty.length; i++){
     System.out.print(" " + qty[i]);
}
//now it'll print  1 3 6 10 15

     System.out.println();
0 голосов
/ 27 мая 2018
After initial:   
    1 
    2
    3
    4
    5

During j loop:
1 -> 1
2 -> 2+1  -> 3
3 -> 3+3  -> 6
4 -> 4+6  -> 10
5 -> 5+10 -> 15

Цикл j начинается с позиции j + 1, просматривает элемент внутри него, суммирует его с элементом @j и перезаписывает значение.Смотрит на следующий элемент, суммирует его с элементом @j.И так далее

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...