Exemplos de fluxo Java

Exemplos de fluxo Java

Java Stream é uma característica muito útil da programação Java. Não é uma estrutura de dados e não pode armazenar ou modificar os dados como os fluxos de E/S Java. É usado para trabalhar em qualquer fonte de dados, como uma matriz, coleção, canal de E/S, etc. Os dados de uma estrutura de dados podem ser recuperados, coletados ou modificados para outra estrutura de dados usando o fluxo Java. O “java.util.O pacote de stream ”é necessário para usar o fluxo Java no código. Diferentes usos do fluxo Java em programas Java são mostrados neste tutorial.

Pré -requisitos:

  1. Instale a versão mais recente do OpenJDK com JRE.
  2. Instale qualquer editor útil para escrever e executar o código Java. Você pode verificar este tutorial para instalar o editor Eclipse.

Exemplos de fluxo Java

Criar fluxos de diferentes estruturas de dados e filtrar os dados do fluxo são mostrados nesta parte do tutorial usando vários exemplos.

Exemplo 1: Criando objeto de fluxo a partir de matrizes

Crie um arquivo Java com o seguinte código para gerar o fluxo com vários valores, com todos os elementos da matriz e com um número específico de valores de matriz. O primeiro fluxo é gerado a partir de três valores de string. O segundo fluxo é gerado a partir de uma matriz de quatro valores. O terceiro fluxo é gerado cortando os três primeiros elementos da matriz.

// importar módulos necessários
importar java.util.Matrizes;
importar java.util.fluxo.Fluxo;
classe pública javastreamexample
public static void main (string [] args)
// declarar um fluxo de uma matriz
Fluxo stream1 = stream.de ("objeto", "-orientado", "programação");
// Imprima todos os valores do fluxo
Stream1.foreach (sistema.out :: print);
// Adicione uma nova linha
Sistema.fora.println ();
// declarar uma matriz de quatro valores de string
String [] STRARR = new String [] "Learn", "Java", "Programming", "Language";
// Crie um fluxo a partir de uma variedade de valores
Fluxo stream2 = matrizes.stream (Starr);
// Imprima todos os valores do fluxo
Stream2.foreach (sistema.out :: print);
// Adicione uma nova linha
Sistema.fora.println ();
// Crie um fluxo com alguns elementos da matriz
Fluxo stream3 = matrizes.fluxo (Salarr, 0, 3);
Stream3.foreach (sistema.out :: print);

A saída a seguir aparece após a execução do código anterior. Três valores do primeiro fluxo são impressos na primeira saída. Todos os valores da matriz são impressos na segunda saída depois de convertê -los no fluxo. Os três primeiros elementos da matriz são convertidos nos dados do fluxo e são impressos na terceira saída.

Exemplo 2: Criando fluxo de coleções

Crie um arquivo Java com o seguinte código para gerar o fluxo dos objetos "Lista", "Set" e "Collection". Um objeto de "lista" de três elementos é definido no código que é convertido no fluxo e impresso posteriormente. Em seguida, um objeto "conjunto" é gerado a partir da "lista" definida anteriormente. O "conjunto" é convertido no fluxo e impresso posteriormente. Em seguida, um objeto de "coleção" de três elementos é gerado e convertido no fluxo e é impresso posteriormente.

// importar módulos necessários
importar java.util.fluxo.Fluxo;
importar java.util.Matrizes;
importar java.util.Lista;
importar java.util.Definir;
importar java.util.Coleção;
importar java.util.Hashset;
classe pública javastreamExample2
public static void main (string [] args)
Lista lista = matrizes.aslist ("Linux", "Dica", ".com ");
// Crie um fluxo de uma lista
Fluxo StreamArray = List.fluxo();
StreamArray.foreach (sistema.out :: print);
Sistema.fora.println ();
// Crie um fluxo de um conjunto
Definir set = new HashSet (List);
Fluxo streamset = set.fluxo();
Streamset.foreach (sistema.out :: print);
Sistema.fora.println ();
// Crie fluxo de uma coleção
Coleção coleção = matrizes.aslist ("Learn", "Java", "Stream");
Fluxo streamcollection = coleção.fluxo();
Streamcollection.foreach (sistema.out :: println);

A saída a seguir aparece após a execução do código anterior. Três valores dos primeiros e segundos fluxos são concatenados e impressos na primeira e na segunda saída para usar o método print (). Cada valor do terceiro fluxo é impresso com uma nova linha na terceira saída para usar o método println ().

Exemplo 3: Filtrando e iterando a coleção

Nos exemplos anteriores, uma única lista de dados é usada no fluxo. Mas se você precisar usar várias listas de dados no fluxo, precisará criar uma classe para definir a estrutura dos dados da lista. Aqui, uma classe chamada "funcionários" é declarada com um construtor que contém quatro variáveis ​​para armazenar um ID de funcionário, nome, postagem e salário.

funcionários da classe pública
// declarar variáveis ​​de classe
public int id;
Nome de String Public;
public string post;
salário público int;
// Declare o construtor
funcionários públicos (int a, string b, string c, int d)

id = a;
nome = b;
post = c;
salário = d;

Crie um arquivo Java com o seguinte código para gerar o fluxo a partir da lista de Arraylist. Em seguida, os quatro registros do funcionário são adicionados à lista de Arraylist. A lista dos funcionários que têm um salário de mais de US $ 60000 são filtrados usando o método filtro () do fluxo e é impresso na saída.

// importar módulos necessários
importar java.util.Lista;
importar java.util.*;
classe pública javastreamExample3
public static void main (string [] args)
// Crie uma lista de funcionários com base na classe de funcionários
Lista < Employees > Emplista = novo Arraylist < Employees > ();
// Insira 4 registros na lista
Emplista.Add (novos funcionários (1, "Mir Sabbir", "Gerente", 60000));
Emplista.Add (novos funcionários (2, "Menhaz Kazi", "Gerente Assistente", 50000));
Emplista.Add (novos funcionários (3, "Rupa Chowdhury", "CEO", 100000));
Emplista.Add (novos funcionários (4, "Naznin Akter", "Contador", 75000));
//
Sistema.fora.println ("Salário mais de US $ 60000");
Sistema.fora.println ("------------------------");
// filtrar dados usando o fluxo Java
Emplista.fluxo().filtro (funcionários -> funcionários.Salário> 60000)
.foreach (funcionários -> sistema.fora.println ("nome:" + funcionários.Nome + "\ nsalary: $" + funcionários.salário + "\ n"));

A saída a seguir aparece após a execução do código anterior. Existem dois registros na lista de Arraylist com os critérios de pesquisa e são impressos na saída. Aqui, o salário de "Rupa Chowdhury" e "Naznin Akter" é de US $ 100000 e US $ 75000, que são mais de US $ 60000.

Conclusão

O fluxo pode ser usado para vários propósitos na programação Java. Alguns usos simples do fluxo que são gerados a partir da matriz e coleção são mostrados neste tutorial para ajudar os usuários de Java a conhecer o método de usar o fluxo em seu código.