Junior
K čemu slouží metoda limit() ve streamech?
sobes.tech AI
Odpověď od AI
Metoda limit(long maxSize) v API Java Stream je určena k vytvoření nového proudu, který obsahuje prvky původního proudu v množství nepřevyšujícím maxSize. Jedná se o mezitímní operaci, která odstraňuje zbývající prvky po zpracování stanoveného množství.
Hlavní efekty:
- Omezení velikosti: Aplikuje omezení na maximální počet prvků ve výsledném proudu.
- Línost: Výpočet prvků probíhá pouze tehdy, když jsou skutečně požadovány terminální operací, dokud není dosaženo stanoveného limitu.
- Možnost zkrácení: Pokud původní proud obsahuje více prvků než
maxSize, bude zkrácen namaxSizeprvků. Pokud méně, budou použity všechny dostupné prvky.
Příklad použití:
List<String> jmena = Arrays.asList("Alice", "Bob", "Charlie", "David", "Eve");
List<String> prvihDvaJmena = jmena.stream()
.limit(2) // Omezí proud na první dva prvky
.collect(Collectors.toList()); // Sesbírá do seznamu
// prvihDvaJmena bude obsahovat ["Alice", "Bob"]