Как создать список разделов из списка последовательных точек

Дает вам идентификатор изображения имени изображения: 25

image_ID=sudo docker images | grep image-name:25 | awk { print $3 }

3
задан Naman 19 January 2019 в 02:56
поделиться

1 ответ

Вы можете сделать это с помощью одного итератора, таким образом:

Iterator<PointAG> it = points.iterator();
if (it.hasNext()) {
  PointAG prev = it.next();
  while (it.hasNext()) {
    PointAG next = it.next();
    sections.add(new LineSection(prev, next));
    prev = next;
  }
}

Вы можете написать тело цикла без каких-либо дополнительных переменных:

  while (it.hasNext()) {
    sections.add(new LineSection(prev, prev = it.next()));
  }

. правильный порядок оценки Java, означающий, что первый prev оценивается перед повторным назначением. Это может быть не лучшим подходом: побочные эффекты внутри выражений легко пропустить при чтении кода; используйте тот, который вам удобно читать.

Выполнение этого с помощью итератора будет более эффективным, чем индексирование для реализаций списков, не относящихся к RandomAccess, например LinkedList.

0
ответ дан Andy Turner 19 January 2019 в 02:56
поделиться
Другие вопросы по тегам:

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