+ 2
Циклы. Если не сложно, объясните, пожалуйста, по пунктам, каким образом в задачах получаются такие ответы.
Как сам по себе работает цикл, я понимаю, но в этих задачах, хоть убей, не вникаю, как получаются те ответы, которые получаются. ArrayList<Integer>list= new ArrayList<Integer>(); for(int i = 0; i < 6; i++){ list.add(i); } int x = 0; Iterator<Integer> it = list.iterator(); while(it.hasNext()){ x+= it.next(); } System.out.println(x); (Ответ: 15) _____________ int f=1, i=2; while(++i<5) f*=i; System.out.println(f); (Ответ 12)
2 Answers
+ 2
В первом варианте создается список из интов.
Далее список заполняется числами int с помощью цикла в 6 итераций (от 0 до 5) < 6
Далее создается переменная для суммирования (int x) и Итератор it коллекции list (ArrayList)
Далее в цикле while (пока итератор находит следующий элеиент коллекции) происходит проход по коллекции (перебор элементов) и суммирование значения каждого элемента в переменную x.
x += it.next() тоже самое что x = x + it.next()
Во втором примере просто работает цикл while при условии пока i < 5.
++i это инкремент переменной i (i = i + 1) увеличение на единицу
f*=i; равен f = f * i;
т.е. теперь f хранит увеличенное значение, которое будет умножено в следующей операции итерации.
Советую почитать про итератор коллекции, а также про инкременты и декременты.
+ 1
@Victor IT Наконец поняла. Видимо, был тот случай, когда тебе все по отдельности ясно, но ты все равно сидишь и тупишь)
Мне нужно было просто посмотреть немного с другой стороны на задачу. Спасибо тебе большое за разъяснение)