/
Shcod
/
java-hw-core-StreamApi2
Обзор
Документация
Войти
/
Shcod
/
java-hw-core-StreamApi2
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
src/main/java/Main.java
38 строк
2 KB
Shcod
first commit
07 авг 2026, 00:06
07 авг 2026, 00:06
802b30e
Код
Авторство
О чём код?
import java.util.*; import java.util.stream.Collectors; public class Main { public static void main(String[] args) { List<String> names = Arrays.asList("Jack", "Connor", "Harry", "George", "Samuel", "John"); List<String> families = Arrays.asList("Evans", "Young", "Harris", "Wilson", "Davies", "Adamson", "Brown"); Collection<Person> persons = new ArrayList<>(); for (int i = 0; i < 10_000_000; i++) { persons.add(new Person( names.get(new Random().nextInt(names.size())), families.get(new Random().nextInt(families.size())), new Random().nextInt(100), Sex.values()[new Random().nextInt(Sex.values().length)], Education.values()[new Random().nextInt(Education.values().length)]) ); } long minorAge = persons.stream().filter(x -> x.getAge() < 18).count(); List<String> militaryAge = persons.stream() .filter(x -> x.getSex() == Sex.MAN && x.getAge() >= 18 && x.getAge() <= 27) .map(Person::getFamily) .collect(Collectors.toList()); List<Person> filteredList = persons.stream() .filter(x -> x.getEducation() == Education.HIGHER && ((x.getAge() >= 18 && x.getAge() <= 60 && x.getSex() == Sex.WOMAN) || (x.getAge() >= 18 && x.getAge() <= 65 && x.getSex() == Sex.MAN))) .sorted(Comparator.comparing(Person::getFamily)) .collect(Collectors.toList()); System.out.println("Minor age count: " + minorAge); System.out.println("Military age count: " + militaryAge); filteredList.stream().limit(100).forEach(System.out::println); // выводим первые 100 строк } }