Могу ли я добавить значения из списка в другой список в цикле?

  1. Java не поддерживает множественное наследование, а это значит, что вы можете расширять только один класс на Java, поэтому, как только вы расширили Thread класс, вы потеряли свой шанс и не можете расширять или наследовать другой класс на Java.
  2. В объектно-ориентированном программировании расширение класса обычно означает добавление новых функций, изменение или улучшение поведения. Если мы не делаем каких-либо изменений на Thread, чем используем интерфейс Runnable. Интерфейс
  3. Runnable представляет собой Task, который может быть выполнен либо обычным Thread, либо Executors или любые другие средства. Таким образом, логическое разделение Task как Runnable, чем Thread, является хорошим конструктивным решением.
  4. Отделяющая задача как Runnable означает, что мы можем повторно использовать задачу, а также иметь возможность выполнять ее с разных средств. Поскольку вы не можете перезапустить Thread после его завершения, снова Runnable vs Thread для задачи, Runnable является победителем.
  5. Разработчик Java распознает это, и именно поэтому Executors принимает Runnable ] как Task, и у них есть рабочий поток, который выполняет эту задачу.
  6. Наследование всех методов Thread - дополнительные накладные расходы только для представления функции Task, которая может быть легко выполнена с помощью Runnable.
-3
задан Danny Taylor 28 March 2019 в 18:02
поделиться

1 ответ

Это прекрасная возможность объединить zip() , cycle() и enumerate() .

.

cycle() обеспечит ваше требование «начать заново».
zip() позволяет вам повторять два списка одновременно.
enumerate() используется, чтобы решить добавить или вычесть значения.

from itertools import cycle

digits = listOfDigits
values = cycle(listOfValues)

for i, (digit, value) in enumerate(zip(digits, values)):
    if i % 2 == 0:
        print(digit - value)
    else:
        print(digit + value)
0
ответ дан Delgan 28 March 2019 в 18:02
поделиться
Другие вопросы по тегам:

Похожие вопросы: