Следите за новинками
в нашем Telegram канале. Жми, чтобы подписаться:)
⊗jvOpRcLs 86 of 147 menu
◀ ▶

Список records в Java

Список объектов вы уже собирали из обычных классов - ArrayList и List.of работают так же for record. Каждый элемент - отдельная запись с теми же компонентами:

record Post(String title, int views) {}

Соберем несколько записей в список и выведем его размер:

import java.util.List; List<Post> feed = List.of( new Post("News", 12), new Post("Guide", 40) ); System.out.println(feed.size());

Элементы списка можно фильтровать и сортировать, обращаясь к компонентам через методы доступа в лямбде или цикле:

import java.util.ArrayList; import java.util.List; public class Main { public static void main(String[] args) { List<Post> feed = new ArrayList<>(List.of( new Post("News", 120), new Post("Tips", 5), new Post("Guide", 80) )); long hot = feed.stream() .filter(p -> p.views() >= 50) .count(); System.out.println(hot); } }

При обходе удобно выводить каждую запись целиком - автоматический toString сработает для каждого элемента:

import java.util.List; public class Main { public static void main(String[] args) { List<Post> feed = List.of( new Post("News", 12), new Post("Draft", 0) ); for (Post post : feed) { System.out.println(post); } } }

Сделайте record Employee с компонентами name и dept. Дан список:

List<Employee> team = List.of( new Employee("Ann", "IT"), new Employee("Bob", "HR") );

Выведите на экран количество элементов в списке team.

Сделайте record Employee с компонентами name и salary. Дан список из трёх сотрудников с разным окладом. Посчитайте, сколько из них имеют salary() >= 90000, и выведите число.

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить