Почему я не могу сосчитать элементы (ы) внутри моего потока?JAVA

Программисты JAVA общаются здесь
Anonymous
 Почему я не могу сосчитать элементы (ы) внутри моего потока?

Сообщение Anonymous »

Я передаю список, чтобы создать/сгенерировать поток и подсчитать элементы этого потока. Я понимаю, что мой empstream содержит только один элемент, который является списком сотрудников . Согласно Javadocs, поток закрыт после того, как он используется/используется, и мы не можем выполнять другие операции на этом потоке. Но здесь я не использовал empstream нигде до empstream.count (); оператор. Выполнение? < /p>
public class AAAproblem1 {
public static void main(String[] args) {
List list = new ArrayList();
list.add(new Employee(6, "Nick", 27, "Software Engineer"));
list.add(new Employee(9, "Tom", 23, "Civil Engineer"));
list.add(new Employee(3, "Jon", 29, "Mechanical Engineer"));
list.add(new Employee(4, "Harry", 21, "Surgeon"));
list.add(new Employee(8, "Don", 25, "Laywer"));
list.add(new Employee(7, "Marry", 20, "Police"));
list.add(new Employee(2, "Angel", 22, "Professor"));
list.add(new Employee(1, "Kate", 23, "Teacher"));
list.add(new Employee(5, "Evan", 22, "Pilot"));

generateStream(list);
}

private static void generateStream(List list) {
Stream empStream = Stream.generate(() -> {
return list;
});
empStream.onClose(()->{System.out.println("empStream is closed");});
System.out.println("counting number of list inside empStream started");
// not able to count the elements inside emp stream
long items = empStream.count();
System.out.println("counting number of list inside empStream finished");
System.out.println("The number of employee list in streams is/are - " + items);
empStream.onClose(()->{System.out.println("empStream is closed");});
}
}


Подробнее здесь: https://stackoverflow.com/questions/641 ... -my-stream

Вернуться в «JAVA»