API es un acrónimo de Interfaz de programación de aplicaciones, que es software y los flujos de Java funcionan en una fuente de datos. Considere una corriente como un flujo de agua en un pequeño canal. Tomemos un ejemplo de la vida real. Cada vez que un usuario utiliza una aplicación que es popular en estos días como WhatsApp para comunicarse mediante la entrega de mensajes de texto o llamadas a otros usuarios. Ambos usuarios están utilizando una API.
Los flujos de Java funcionan en tres operaciones que, como se menciona a continuación
- Fuente de datos
- Operación intermedia
- Operación de terminales
Métodos: los flujos se pueden crear de tres maneras
- Usar un objeto de cualquier clase del marco de la colección
- Usar una array del tipo de datos de referencia
- Usando la interfaz definida en el paquete ‘java.util.stream’
Método 1: fuente de datos
La fuente de datos puede ser muy variada, como una array, una lista, etc.
Sintaxis:
ArrayList<Integer> numbers = new ArrayList<>(); Integer[] numbers = {1,2,3};
Ejemplo 1: uso de un objeto como fuente de datos
Java
// Java Program showcasing data source // using an object as a data source // Importing input output classes import java.io.*; // Class class GFG { // Main driver method public static void main(String[] args) { // Data Source // Creating an arrayList object // Declaring object of String type ArrayList<String> gfgNames = new ArrayList<>(); // Custom input elements to above object gfgNames.add("Dean"); gfgNames.add("castee"); gfgNames.add("robert"); // Creating object of Stream where Stream is created // using arrayList and object as data source Stream<String> streamOfNames = gfgNames.stream(); // Print and display element System.out.print(streamOfNames); } }
Ejemplo 2: uso de una array como fuente de datos
// Data Source Integer[] numbers = {1,2,3,4,5};
// Stream using an array Stream<Integer> streamOfNumbers = Arrays.stream(numbers);
// using predefined Instream interface integerStream = IntStream.range(1,100); // a stream from 1 to 99;
Java
// Java Program showcasing data source // using an array as a data source // Importing java input output class import java.io.*; // Importing all classes from // java.util package import java.util.*; // Importing class for additional operations, // additionls and pipelines import java.util.stream.IntStream; // Class class GFG { // Main driver method public static void main(String[] args) { // Creating a predefined stream using range method // Custom inputs for range as parameters var stream = IntStream.range(1, 100); // Stream is created var max = stream.filter(number -> number % 4 == 0) .count(); // Print and display the maximum number // from the stream System.out.println(max); } }
24
Método 2: Operación Intermedia
Las operaciones intermedias son algunos métodos que se pueden aplicar en una corriente.
Nota: Puede ser de cualquier número
filter()
Ejemplo:
Java
import java.io.*; class GFG { public static void main(String[] args) { // Data Source Integer[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 } // Stream Stream<Integer> streamOfNumbers = Arrays.stream(numbers); // filter all the even numbers Stream<Integer> evenNumbersStream = streamOfNumbers.filter( number -> number % 2 == 0) } }
Método 3: Operación terminal
Métodos de operación de terminal que podemos aplicar en una transmisión que harán que una transmisión se «cierre».
Concepto:
Algunas operaciones de terminal se pueden usar para iterar sobre los elementos de la secuencia.
min(),max(),count()
forEach(),noneMatch()
Ejemplo 1: explicación de la API de transmisión
Java
// Importing input output classes import java.io.*; // Importing all classes from // java.util package import java.util.*; // Class class GFG { // Main driver method public static void main(String[] args) { // Data source // Custom integer inputs Integer[] numbers = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 0 }; // Stream var streamOfNumbers = Arrays.stream(numbers); // Using filter method var evenNumbersStream = streamOfNumbers .filter(number -> number % 3 == 0) .count(); // Print and display System.out.println(evenNumbersStream); } }
4
Ejemplo 2:
Java
// Importing all classes from java.util package import java.io.*; import java.util.*; // Class class GFG { // Main driver method public static void main(String[] args) { // Creating an ArrayList of Integer type ArrayList<Integer> list = new ArrayList<>(); // Adding elements to above object of Arraylist // Custom inputs list.add(20); list.add(4); list.add(76); list.add(21); list.add(3); list.add(80); var stream = list.stream(); var numbers = stream.filter(number -> number % 2 == 0) .filter(number -> number > 20); // Print all the elements of the stream on the console numbers.forEach(System.out::println); } }
76 80
Nota: También se puede pasar lambda número -> System.out.println(número + ” “)
Publicación traducida automáticamente
Artículo escrito por dimpalagrawal21 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA