Как я могу преобразовать это для цикла для аналогового потока Java 8 - PullRequest
0 голосов
/ 27 мая 2019

Как я могу преобразовать этот код в поток Java 8.

Пробовал использовать для каждого, но не удалось.Для кода цикла работает.

for(RestrictedInstrument restrictedInstrument : restrictedInstruments){
    List<Identifier> identifierList = restrictedInstrument.getIdentifier();
    setTicker(matrix, identifierList);
}

setTicker() метод должен вызываться с матричным объектом и identifierList.

Ответы [ 3 ]

2 голосов
/ 27 мая 2019

Вы можете просто использовать List.forEach():

restrictedInstruments.forEach(i -> setTicker(matrix, i.getIdentifier()));
1 голос
/ 27 мая 2019

Вы можете выполнить потоковую передачу списка, а затем просто передать потребителю, который просто вызывает функцию setTicker.

 restrictedInstruments.stream()
.forEach(identifierList -> setTicker(matrix, identifierList.getIdentifier()));
1 голос
/ 27 мая 2019

Если предположить, что limitedInstruments - это список, сначала вы отображаете на identifierList, а затем используете Stream.forEach () для выполнения метода setTicker (...)

restrictedInstruments
  .stream()
  .map( RestrictedInstrument::getIdentifier )
  .forEach( identifierList -> setTicker(matrix, identifierList) )

Для массивов просто используйте Arrays.stream (limitedInstruments)

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