Junior
Mit szolgál a limit() metódus a streamekben?
sobes.tech MI
Válasz az MI-től
A limit(long maxSize) metódus a Java Stream API-ban arra szolgál, hogy egy új stream-et hozzon létre, amely az eredeti stream elemeit tartalmazza olyan mennyiségben, amely nem haladja meg a maxSize értékét. Ez egy közbenső művelet, amely a megadott mennyiség feldolgozása után elveti a maradék elemeket.
Fő hatások:
- Méretkorlátozás: Alkalmaz egy korlátozást a eredmény stream maximális elem számára.
- Lazítás: Az elemek értékelése csak akkor történik meg, amikor valóban kérik őket egy végső művelettel, amíg el nem érik a beállított limitet.
- Vágási lehetőség: Ha az eredeti stream több elemet tartalmaz, mint a
maxSize, akkor a stream amaxSizeelemre lesz vágva. Ha kevesebb, akkor az összes elérhető elemet felhasználja.
Használati példa:
List<String> nevek = Arrays.asList("Alice", "Bob", "Charlie", "David", "Eve");
List<String> elsőKétNév = nevek.stream()
.limit(2) // Korlátozza a streamet az első két elemre
.collect(Collectors.toList()); // Listába gyűjti
// elsőKétNév tartalmazni fogja ["Alice", "Bob"]